{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "## WeightWatcher helps you choose the best pretrained model for your needs.\n",
    "\n",
    "## You can use WeightWatcher to compare several pretrained models and choose the one with the lowest Log Norm.\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams['figure.figsize'] = 8,8\n",
    "\n",
    "from scipy.ndimage.interpolation import zoom\n",
    "import VGG\n",
    "import ResNet\n",
    "import numpy as np\n",
    "import os\n",
    "import gradcamutils\n",
    "from DenseNet import densenet\n",
    "from PIL import Image\n",
    "import weightwatcher as ww\n",
    "from ResNet import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"densenet\"\n",
      "__________________________________________________________________________________________________\n",
      "Layer (type)                    Output Shape         Param #     Connected to                     \n",
      "==================================================================================================\n",
      "input_7 (InputLayer)            (None, 352, 320, 1)  0                                            \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_181 (Conv2D)             (None, 176, 160, 8)  392         input_7[0][0]                    \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_183 (BatchN (None, 176, 160, 8)  32          conv2d_181[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_178 (Activation)     (None, 176, 160, 8)  0           batch_normalization_183[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "max_pooling2d_3 (MaxPooling2D)  (None, 88, 80, 8)    0           activation_178[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_184 (BatchN (None, 88, 80, 8)    32          max_pooling2d_3[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_179 (Activation)     (None, 88, 80, 8)    0           batch_normalization_184[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_182 (Conv2D)             (None, 88, 80, 48)   384         activation_179[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_185 (BatchN (None, 88, 80, 48)   192         conv2d_182[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_180 (Activation)     (None, 88, 80, 48)   0           batch_normalization_185[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_183 (Conv2D)             (None, 88, 80, 12)   5184        activation_180[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_79 (Concatenate)    (None, 88, 80, 20)   0           max_pooling2d_3[0][0]            \n",
      "                                                                 conv2d_183[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_186 (BatchN (None, 88, 80, 20)   80          concatenate_79[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_181 (Activation)     (None, 88, 80, 20)   0           batch_normalization_186[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_184 (Conv2D)             (None, 88, 80, 48)   960         activation_181[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_187 (BatchN (None, 88, 80, 48)   192         conv2d_184[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_182 (Activation)     (None, 88, 80, 48)   0           batch_normalization_187[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_185 (Conv2D)             (None, 88, 80, 12)   5184        activation_182[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_80 (Concatenate)    (None, 88, 80, 32)   0           concatenate_79[0][0]             \n",
      "                                                                 conv2d_185[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_188 (BatchN (None, 88, 80, 32)   128         concatenate_80[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_183 (Activation)     (None, 88, 80, 32)   0           batch_normalization_188[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_186 (Conv2D)             (None, 88, 80, 48)   1536        activation_183[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_189 (BatchN (None, 88, 80, 48)   192         conv2d_186[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_184 (Activation)     (None, 88, 80, 48)   0           batch_normalization_189[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_187 (Conv2D)             (None, 88, 80, 12)   5184        activation_184[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_81 (Concatenate)    (None, 88, 80, 44)   0           concatenate_80[0][0]             \n",
      "                                                                 conv2d_187[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_190 (BatchN (None, 88, 80, 44)   176         concatenate_81[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_185 (Activation)     (None, 88, 80, 44)   0           batch_normalization_190[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_188 (Conv2D)             (None, 88, 80, 48)   2112        activation_185[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_191 (BatchN (None, 88, 80, 48)   192         conv2d_188[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_186 (Activation)     (None, 88, 80, 48)   0           batch_normalization_191[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_189 (Conv2D)             (None, 88, 80, 12)   5184        activation_186[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_82 (Concatenate)    (None, 88, 80, 56)   0           concatenate_81[0][0]             \n",
      "                                                                 conv2d_189[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_192 (BatchN (None, 88, 80, 56)   224         concatenate_82[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_187 (Activation)     (None, 88, 80, 56)   0           batch_normalization_192[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_190 (Conv2D)             (None, 88, 80, 48)   2688        activation_187[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_193 (BatchN (None, 88, 80, 48)   192         conv2d_190[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_188 (Activation)     (None, 88, 80, 48)   0           batch_normalization_193[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_191 (Conv2D)             (None, 88, 80, 12)   5184        activation_188[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_83 (Concatenate)    (None, 88, 80, 68)   0           concatenate_82[0][0]             \n",
      "                                                                 conv2d_191[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_194 (BatchN (None, 88, 80, 68)   272         concatenate_83[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_189 (Activation)     (None, 88, 80, 68)   0           batch_normalization_194[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_192 (Conv2D)             (None, 88, 80, 48)   3264        activation_189[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_195 (BatchN (None, 88, 80, 48)   192         conv2d_192[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_190 (Activation)     (None, 88, 80, 48)   0           batch_normalization_195[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_193 (Conv2D)             (None, 88, 80, 12)   5184        activation_190[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_84 (Concatenate)    (None, 88, 80, 80)   0           concatenate_83[0][0]             \n",
      "                                                                 conv2d_193[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_196 (BatchN (None, 88, 80, 80)   320         concatenate_84[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_191 (Activation)     (None, 88, 80, 80)   0           batch_normalization_196[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_194 (Conv2D)             (None, 88, 80, 40)   3200        activation_191[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "average_pooling2d_4 (AveragePoo (None, 44, 40, 40)   0           conv2d_194[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_197 (BatchN (None, 44, 40, 40)   160         average_pooling2d_4[0][0]        \n",
      "__________________________________________________________________________________________________\n",
      "activation_192 (Activation)     (None, 44, 40, 40)   0           batch_normalization_197[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_195 (Conv2D)             (None, 44, 40, 48)   1920        activation_192[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_198 (BatchN (None, 44, 40, 48)   192         conv2d_195[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_193 (Activation)     (None, 44, 40, 48)   0           batch_normalization_198[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_196 (Conv2D)             (None, 44, 40, 12)   5184        activation_193[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_85 (Concatenate)    (None, 44, 40, 52)   0           average_pooling2d_4[0][0]        \n",
      "                                                                 conv2d_196[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_199 (BatchN (None, 44, 40, 52)   208         concatenate_85[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_194 (Activation)     (None, 44, 40, 52)   0           batch_normalization_199[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_197 (Conv2D)             (None, 44, 40, 48)   2496        activation_194[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_200 (BatchN (None, 44, 40, 48)   192         conv2d_197[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_195 (Activation)     (None, 44, 40, 48)   0           batch_normalization_200[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_198 (Conv2D)             (None, 44, 40, 12)   5184        activation_195[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_86 (Concatenate)    (None, 44, 40, 64)   0           concatenate_85[0][0]             \n",
      "                                                                 conv2d_198[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_201 (BatchN (None, 44, 40, 64)   256         concatenate_86[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_196 (Activation)     (None, 44, 40, 64)   0           batch_normalization_201[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_199 (Conv2D)             (None, 44, 40, 48)   3072        activation_196[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_202 (BatchN (None, 44, 40, 48)   192         conv2d_199[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_197 (Activation)     (None, 44, 40, 48)   0           batch_normalization_202[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_200 (Conv2D)             (None, 44, 40, 12)   5184        activation_197[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_87 (Concatenate)    (None, 44, 40, 76)   0           concatenate_86[0][0]             \n",
      "                                                                 conv2d_200[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_203 (BatchN (None, 44, 40, 76)   304         concatenate_87[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_198 (Activation)     (None, 44, 40, 76)   0           batch_normalization_203[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_201 (Conv2D)             (None, 44, 40, 48)   3648        activation_198[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_204 (BatchN (None, 44, 40, 48)   192         conv2d_201[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_199 (Activation)     (None, 44, 40, 48)   0           batch_normalization_204[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_202 (Conv2D)             (None, 44, 40, 12)   5184        activation_199[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_88 (Concatenate)    (None, 44, 40, 88)   0           concatenate_87[0][0]             \n",
      "                                                                 conv2d_202[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_205 (BatchN (None, 44, 40, 88)   352         concatenate_88[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_200 (Activation)     (None, 44, 40, 88)   0           batch_normalization_205[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_203 (Conv2D)             (None, 44, 40, 48)   4224        activation_200[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_206 (BatchN (None, 44, 40, 48)   192         conv2d_203[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_201 (Activation)     (None, 44, 40, 48)   0           batch_normalization_206[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_204 (Conv2D)             (None, 44, 40, 12)   5184        activation_201[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_89 (Concatenate)    (None, 44, 40, 100)  0           concatenate_88[0][0]             \n",
      "                                                                 conv2d_204[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_207 (BatchN (None, 44, 40, 100)  400         concatenate_89[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_202 (Activation)     (None, 44, 40, 100)  0           batch_normalization_207[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_205 (Conv2D)             (None, 44, 40, 48)   4800        activation_202[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_208 (BatchN (None, 44, 40, 48)   192         conv2d_205[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_203 (Activation)     (None, 44, 40, 48)   0           batch_normalization_208[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_206 (Conv2D)             (None, 44, 40, 12)   5184        activation_203[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_90 (Concatenate)    (None, 44, 40, 112)  0           concatenate_89[0][0]             \n",
      "                                                                 conv2d_206[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_209 (BatchN (None, 44, 40, 112)  448         concatenate_90[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_204 (Activation)     (None, 44, 40, 112)  0           batch_normalization_209[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_207 (Conv2D)             (None, 44, 40, 48)   5376        activation_204[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_210 (BatchN (None, 44, 40, 48)   192         conv2d_207[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_205 (Activation)     (None, 44, 40, 48)   0           batch_normalization_210[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_208 (Conv2D)             (None, 44, 40, 12)   5184        activation_205[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_91 (Concatenate)    (None, 44, 40, 124)  0           concatenate_90[0][0]             \n",
      "                                                                 conv2d_208[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_211 (BatchN (None, 44, 40, 124)  496         concatenate_91[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_206 (Activation)     (None, 44, 40, 124)  0           batch_normalization_211[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_209 (Conv2D)             (None, 44, 40, 48)   5952        activation_206[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_212 (BatchN (None, 44, 40, 48)   192         conv2d_209[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_207 (Activation)     (None, 44, 40, 48)   0           batch_normalization_212[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_210 (Conv2D)             (None, 44, 40, 12)   5184        activation_207[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_92 (Concatenate)    (None, 44, 40, 136)  0           concatenate_91[0][0]             \n",
      "                                                                 conv2d_210[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_213 (BatchN (None, 44, 40, 136)  544         concatenate_92[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_208 (Activation)     (None, 44, 40, 136)  0           batch_normalization_213[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_211 (Conv2D)             (None, 44, 40, 48)   6528        activation_208[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_214 (BatchN (None, 44, 40, 48)   192         conv2d_211[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_209 (Activation)     (None, 44, 40, 48)   0           batch_normalization_214[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_212 (Conv2D)             (None, 44, 40, 12)   5184        activation_209[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_93 (Concatenate)    (None, 44, 40, 148)  0           concatenate_92[0][0]             \n",
      "                                                                 conv2d_212[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_215 (BatchN (None, 44, 40, 148)  592         concatenate_93[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_210 (Activation)     (None, 44, 40, 148)  0           batch_normalization_215[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_213 (Conv2D)             (None, 44, 40, 48)   7104        activation_210[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_216 (BatchN (None, 44, 40, 48)   192         conv2d_213[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_211 (Activation)     (None, 44, 40, 48)   0           batch_normalization_216[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_214 (Conv2D)             (None, 44, 40, 12)   5184        activation_211[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_94 (Concatenate)    (None, 44, 40, 160)  0           concatenate_93[0][0]             \n",
      "                                                                 conv2d_214[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_217 (BatchN (None, 44, 40, 160)  640         concatenate_94[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_212 (Activation)     (None, 44, 40, 160)  0           batch_normalization_217[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_215 (Conv2D)             (None, 44, 40, 48)   7680        activation_212[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_218 (BatchN (None, 44, 40, 48)   192         conv2d_215[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_213 (Activation)     (None, 44, 40, 48)   0           batch_normalization_218[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_216 (Conv2D)             (None, 44, 40, 12)   5184        activation_213[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_95 (Concatenate)    (None, 44, 40, 172)  0           concatenate_94[0][0]             \n",
      "                                                                 conv2d_216[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_219 (BatchN (None, 44, 40, 172)  688         concatenate_95[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_214 (Activation)     (None, 44, 40, 172)  0           batch_normalization_219[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_217 (Conv2D)             (None, 44, 40, 48)   8256        activation_214[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_220 (BatchN (None, 44, 40, 48)   192         conv2d_217[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_215 (Activation)     (None, 44, 40, 48)   0           batch_normalization_220[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_218 (Conv2D)             (None, 44, 40, 12)   5184        activation_215[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_96 (Concatenate)    (None, 44, 40, 184)  0           concatenate_95[0][0]             \n",
      "                                                                 conv2d_218[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_221 (BatchN (None, 44, 40, 184)  736         concatenate_96[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_216 (Activation)     (None, 44, 40, 184)  0           batch_normalization_221[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_219 (Conv2D)             (None, 44, 40, 92)   16928       activation_216[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "average_pooling2d_5 (AveragePoo (None, 22, 20, 92)   0           conv2d_219[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_222 (BatchN (None, 22, 20, 92)   368         average_pooling2d_5[0][0]        \n",
      "__________________________________________________________________________________________________\n",
      "activation_217 (Activation)     (None, 22, 20, 92)   0           batch_normalization_222[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_220 (Conv2D)             (None, 22, 20, 48)   4416        activation_217[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_223 (BatchN (None, 22, 20, 48)   192         conv2d_220[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_218 (Activation)     (None, 22, 20, 48)   0           batch_normalization_223[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_221 (Conv2D)             (None, 22, 20, 12)   5184        activation_218[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_97 (Concatenate)    (None, 22, 20, 104)  0           average_pooling2d_5[0][0]        \n",
      "                                                                 conv2d_221[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_224 (BatchN (None, 22, 20, 104)  416         concatenate_97[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_219 (Activation)     (None, 22, 20, 104)  0           batch_normalization_224[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_222 (Conv2D)             (None, 22, 20, 48)   4992        activation_219[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_225 (BatchN (None, 22, 20, 48)   192         conv2d_222[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_220 (Activation)     (None, 22, 20, 48)   0           batch_normalization_225[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_223 (Conv2D)             (None, 22, 20, 12)   5184        activation_220[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_98 (Concatenate)    (None, 22, 20, 116)  0           concatenate_97[0][0]             \n",
      "                                                                 conv2d_223[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_226 (BatchN (None, 22, 20, 116)  464         concatenate_98[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_221 (Activation)     (None, 22, 20, 116)  0           batch_normalization_226[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_224 (Conv2D)             (None, 22, 20, 48)   5568        activation_221[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_227 (BatchN (None, 22, 20, 48)   192         conv2d_224[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_222 (Activation)     (None, 22, 20, 48)   0           batch_normalization_227[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_225 (Conv2D)             (None, 22, 20, 12)   5184        activation_222[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_99 (Concatenate)    (None, 22, 20, 128)  0           concatenate_98[0][0]             \n",
      "                                                                 conv2d_225[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_228 (BatchN (None, 22, 20, 128)  512         concatenate_99[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "activation_223 (Activation)     (None, 22, 20, 128)  0           batch_normalization_228[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_226 (Conv2D)             (None, 22, 20, 48)   6144        activation_223[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_229 (BatchN (None, 22, 20, 48)   192         conv2d_226[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_224 (Activation)     (None, 22, 20, 48)   0           batch_normalization_229[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_227 (Conv2D)             (None, 22, 20, 12)   5184        activation_224[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_100 (Concatenate)   (None, 22, 20, 140)  0           concatenate_99[0][0]             \n",
      "                                                                 conv2d_227[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_230 (BatchN (None, 22, 20, 140)  560         concatenate_100[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_225 (Activation)     (None, 22, 20, 140)  0           batch_normalization_230[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_228 (Conv2D)             (None, 22, 20, 48)   6720        activation_225[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_231 (BatchN (None, 22, 20, 48)   192         conv2d_228[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_226 (Activation)     (None, 22, 20, 48)   0           batch_normalization_231[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_229 (Conv2D)             (None, 22, 20, 12)   5184        activation_226[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_101 (Concatenate)   (None, 22, 20, 152)  0           concatenate_100[0][0]            \n",
      "                                                                 conv2d_229[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_232 (BatchN (None, 22, 20, 152)  608         concatenate_101[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_227 (Activation)     (None, 22, 20, 152)  0           batch_normalization_232[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_230 (Conv2D)             (None, 22, 20, 48)   7296        activation_227[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_233 (BatchN (None, 22, 20, 48)   192         conv2d_230[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_228 (Activation)     (None, 22, 20, 48)   0           batch_normalization_233[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_231 (Conv2D)             (None, 22, 20, 12)   5184        activation_228[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_102 (Concatenate)   (None, 22, 20, 164)  0           concatenate_101[0][0]            \n",
      "                                                                 conv2d_231[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_234 (BatchN (None, 22, 20, 164)  656         concatenate_102[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_229 (Activation)     (None, 22, 20, 164)  0           batch_normalization_234[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_232 (Conv2D)             (None, 22, 20, 48)   7872        activation_229[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_235 (BatchN (None, 22, 20, 48)   192         conv2d_232[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_230 (Activation)     (None, 22, 20, 48)   0           batch_normalization_235[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_233 (Conv2D)             (None, 22, 20, 12)   5184        activation_230[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_103 (Concatenate)   (None, 22, 20, 176)  0           concatenate_102[0][0]            \n",
      "                                                                 conv2d_233[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_236 (BatchN (None, 22, 20, 176)  704         concatenate_103[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_231 (Activation)     (None, 22, 20, 176)  0           batch_normalization_236[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_234 (Conv2D)             (None, 22, 20, 48)   8448        activation_231[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_237 (BatchN (None, 22, 20, 48)   192         conv2d_234[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_232 (Activation)     (None, 22, 20, 48)   0           batch_normalization_237[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_235 (Conv2D)             (None, 22, 20, 12)   5184        activation_232[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_104 (Concatenate)   (None, 22, 20, 188)  0           concatenate_103[0][0]            \n",
      "                                                                 conv2d_235[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_238 (BatchN (None, 22, 20, 188)  752         concatenate_104[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_233 (Activation)     (None, 22, 20, 188)  0           batch_normalization_238[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_236 (Conv2D)             (None, 22, 20, 48)   9024        activation_233[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_239 (BatchN (None, 22, 20, 48)   192         conv2d_236[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_234 (Activation)     (None, 22, 20, 48)   0           batch_normalization_239[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_237 (Conv2D)             (None, 22, 20, 12)   5184        activation_234[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_105 (Concatenate)   (None, 22, 20, 200)  0           concatenate_104[0][0]            \n",
      "                                                                 conv2d_237[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_240 (BatchN (None, 22, 20, 200)  800         concatenate_105[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_235 (Activation)     (None, 22, 20, 200)  0           batch_normalization_240[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_238 (Conv2D)             (None, 22, 20, 48)   9600        activation_235[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_241 (BatchN (None, 22, 20, 48)   192         conv2d_238[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_236 (Activation)     (None, 22, 20, 48)   0           batch_normalization_241[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_239 (Conv2D)             (None, 22, 20, 12)   5184        activation_236[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_106 (Concatenate)   (None, 22, 20, 212)  0           concatenate_105[0][0]            \n",
      "                                                                 conv2d_239[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_242 (BatchN (None, 22, 20, 212)  848         concatenate_106[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_237 (Activation)     (None, 22, 20, 212)  0           batch_normalization_242[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_240 (Conv2D)             (None, 22, 20, 48)   10176       activation_237[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_243 (BatchN (None, 22, 20, 48)   192         conv2d_240[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_238 (Activation)     (None, 22, 20, 48)   0           batch_normalization_243[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_241 (Conv2D)             (None, 22, 20, 12)   5184        activation_238[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_107 (Concatenate)   (None, 22, 20, 224)  0           concatenate_106[0][0]            \n",
      "                                                                 conv2d_241[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_244 (BatchN (None, 22, 20, 224)  896         concatenate_107[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_239 (Activation)     (None, 22, 20, 224)  0           batch_normalization_244[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_242 (Conv2D)             (None, 22, 20, 48)   10752       activation_239[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_245 (BatchN (None, 22, 20, 48)   192         conv2d_242[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_240 (Activation)     (None, 22, 20, 48)   0           batch_normalization_245[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_243 (Conv2D)             (None, 22, 20, 12)   5184        activation_240[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_108 (Concatenate)   (None, 22, 20, 236)  0           concatenate_107[0][0]            \n",
      "                                                                 conv2d_243[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_246 (BatchN (None, 22, 20, 236)  944         concatenate_108[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_241 (Activation)     (None, 22, 20, 236)  0           batch_normalization_246[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_244 (Conv2D)             (None, 22, 20, 48)   11328       activation_241[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_247 (BatchN (None, 22, 20, 48)   192         conv2d_244[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_242 (Activation)     (None, 22, 20, 48)   0           batch_normalization_247[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_245 (Conv2D)             (None, 22, 20, 12)   5184        activation_242[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_109 (Concatenate)   (None, 22, 20, 248)  0           concatenate_108[0][0]            \n",
      "                                                                 conv2d_245[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_248 (BatchN (None, 22, 20, 248)  992         concatenate_109[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_243 (Activation)     (None, 22, 20, 248)  0           batch_normalization_248[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_246 (Conv2D)             (None, 22, 20, 48)   11904       activation_243[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_249 (BatchN (None, 22, 20, 48)   192         conv2d_246[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_244 (Activation)     (None, 22, 20, 48)   0           batch_normalization_249[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_247 (Conv2D)             (None, 22, 20, 12)   5184        activation_244[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_110 (Concatenate)   (None, 22, 20, 260)  0           concatenate_109[0][0]            \n",
      "                                                                 conv2d_247[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_250 (BatchN (None, 22, 20, 260)  1040        concatenate_110[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_245 (Activation)     (None, 22, 20, 260)  0           batch_normalization_250[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_248 (Conv2D)             (None, 22, 20, 48)   12480       activation_245[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_251 (BatchN (None, 22, 20, 48)   192         conv2d_248[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_246 (Activation)     (None, 22, 20, 48)   0           batch_normalization_251[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_249 (Conv2D)             (None, 22, 20, 12)   5184        activation_246[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_111 (Concatenate)   (None, 22, 20, 272)  0           concatenate_110[0][0]            \n",
      "                                                                 conv2d_249[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_252 (BatchN (None, 22, 20, 272)  1088        concatenate_111[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_247 (Activation)     (None, 22, 20, 272)  0           batch_normalization_252[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_250 (Conv2D)             (None, 22, 20, 48)   13056       activation_247[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_253 (BatchN (None, 22, 20, 48)   192         conv2d_250[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_248 (Activation)     (None, 22, 20, 48)   0           batch_normalization_253[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_251 (Conv2D)             (None, 22, 20, 12)   5184        activation_248[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_112 (Concatenate)   (None, 22, 20, 284)  0           concatenate_111[0][0]            \n",
      "                                                                 conv2d_251[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_254 (BatchN (None, 22, 20, 284)  1136        concatenate_112[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_249 (Activation)     (None, 22, 20, 284)  0           batch_normalization_254[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_252 (Conv2D)             (None, 22, 20, 48)   13632       activation_249[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_255 (BatchN (None, 22, 20, 48)   192         conv2d_252[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_250 (Activation)     (None, 22, 20, 48)   0           batch_normalization_255[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_253 (Conv2D)             (None, 22, 20, 12)   5184        activation_250[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_113 (Concatenate)   (None, 22, 20, 296)  0           concatenate_112[0][0]            \n",
      "                                                                 conv2d_253[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_256 (BatchN (None, 22, 20, 296)  1184        concatenate_113[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_251 (Activation)     (None, 22, 20, 296)  0           batch_normalization_256[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_254 (Conv2D)             (None, 22, 20, 48)   14208       activation_251[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_257 (BatchN (None, 22, 20, 48)   192         conv2d_254[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_252 (Activation)     (None, 22, 20, 48)   0           batch_normalization_257[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_255 (Conv2D)             (None, 22, 20, 12)   5184        activation_252[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_114 (Concatenate)   (None, 22, 20, 308)  0           concatenate_113[0][0]            \n",
      "                                                                 conv2d_255[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_258 (BatchN (None, 22, 20, 308)  1232        concatenate_114[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_253 (Activation)     (None, 22, 20, 308)  0           batch_normalization_258[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_256 (Conv2D)             (None, 22, 20, 48)   14784       activation_253[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_259 (BatchN (None, 22, 20, 48)   192         conv2d_256[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_254 (Activation)     (None, 22, 20, 48)   0           batch_normalization_259[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_257 (Conv2D)             (None, 22, 20, 12)   5184        activation_254[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_115 (Concatenate)   (None, 22, 20, 320)  0           concatenate_114[0][0]            \n",
      "                                                                 conv2d_257[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_260 (BatchN (None, 22, 20, 320)  1280        concatenate_115[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_255 (Activation)     (None, 22, 20, 320)  0           batch_normalization_260[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_258 (Conv2D)             (None, 22, 20, 48)   15360       activation_255[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_261 (BatchN (None, 22, 20, 48)   192         conv2d_258[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_256 (Activation)     (None, 22, 20, 48)   0           batch_normalization_261[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_259 (Conv2D)             (None, 22, 20, 12)   5184        activation_256[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_116 (Concatenate)   (None, 22, 20, 332)  0           concatenate_115[0][0]            \n",
      "                                                                 conv2d_259[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_262 (BatchN (None, 22, 20, 332)  1328        concatenate_116[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_257 (Activation)     (None, 22, 20, 332)  0           batch_normalization_262[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_260 (Conv2D)             (None, 22, 20, 48)   15936       activation_257[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_263 (BatchN (None, 22, 20, 48)   192         conv2d_260[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_258 (Activation)     (None, 22, 20, 48)   0           batch_normalization_263[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_261 (Conv2D)             (None, 22, 20, 12)   5184        activation_258[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_117 (Concatenate)   (None, 22, 20, 344)  0           concatenate_116[0][0]            \n",
      "                                                                 conv2d_261[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_264 (BatchN (None, 22, 20, 344)  1376        concatenate_117[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_259 (Activation)     (None, 22, 20, 344)  0           batch_normalization_264[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_262 (Conv2D)             (None, 22, 20, 48)   16512       activation_259[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_265 (BatchN (None, 22, 20, 48)   192         conv2d_262[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_260 (Activation)     (None, 22, 20, 48)   0           batch_normalization_265[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_263 (Conv2D)             (None, 22, 20, 12)   5184        activation_260[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_118 (Concatenate)   (None, 22, 20, 356)  0           concatenate_117[0][0]            \n",
      "                                                                 conv2d_263[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_266 (BatchN (None, 22, 20, 356)  1424        concatenate_118[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_261 (Activation)     (None, 22, 20, 356)  0           batch_normalization_266[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_264 (Conv2D)             (None, 22, 20, 48)   17088       activation_261[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_267 (BatchN (None, 22, 20, 48)   192         conv2d_264[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_262 (Activation)     (None, 22, 20, 48)   0           batch_normalization_267[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_265 (Conv2D)             (None, 22, 20, 12)   5184        activation_262[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_119 (Concatenate)   (None, 22, 20, 368)  0           concatenate_118[0][0]            \n",
      "                                                                 conv2d_265[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_268 (BatchN (None, 22, 20, 368)  1472        concatenate_119[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_263 (Activation)     (None, 22, 20, 368)  0           batch_normalization_268[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_266 (Conv2D)             (None, 22, 20, 48)   17664       activation_263[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_269 (BatchN (None, 22, 20, 48)   192         conv2d_266[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_264 (Activation)     (None, 22, 20, 48)   0           batch_normalization_269[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_267 (Conv2D)             (None, 22, 20, 12)   5184        activation_264[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_120 (Concatenate)   (None, 22, 20, 380)  0           concatenate_119[0][0]            \n",
      "                                                                 conv2d_267[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_270 (BatchN (None, 22, 20, 380)  1520        concatenate_120[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_265 (Activation)     (None, 22, 20, 380)  0           batch_normalization_270[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_268 (Conv2D)             (None, 22, 20, 48)   18240       activation_265[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_271 (BatchN (None, 22, 20, 48)   192         conv2d_268[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_266 (Activation)     (None, 22, 20, 48)   0           batch_normalization_271[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_269 (Conv2D)             (None, 22, 20, 12)   5184        activation_266[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_121 (Concatenate)   (None, 22, 20, 392)  0           concatenate_120[0][0]            \n",
      "                                                                 conv2d_269[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_272 (BatchN (None, 22, 20, 392)  1568        concatenate_121[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_267 (Activation)     (None, 22, 20, 392)  0           batch_normalization_272[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_270 (Conv2D)             (None, 22, 20, 48)   18816       activation_267[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_273 (BatchN (None, 22, 20, 48)   192         conv2d_270[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_268 (Activation)     (None, 22, 20, 48)   0           batch_normalization_273[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_271 (Conv2D)             (None, 22, 20, 12)   5184        activation_268[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_122 (Concatenate)   (None, 22, 20, 404)  0           concatenate_121[0][0]            \n",
      "                                                                 conv2d_271[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_274 (BatchN (None, 22, 20, 404)  1616        concatenate_122[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_269 (Activation)     (None, 22, 20, 404)  0           batch_normalization_274[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_272 (Conv2D)             (None, 22, 20, 48)   19392       activation_269[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_275 (BatchN (None, 22, 20, 48)   192         conv2d_272[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_270 (Activation)     (None, 22, 20, 48)   0           batch_normalization_275[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_273 (Conv2D)             (None, 22, 20, 12)   5184        activation_270[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_123 (Concatenate)   (None, 22, 20, 416)  0           concatenate_122[0][0]            \n",
      "                                                                 conv2d_273[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_276 (BatchN (None, 22, 20, 416)  1664        concatenate_123[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_271 (Activation)     (None, 22, 20, 416)  0           batch_normalization_276[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_274 (Conv2D)             (None, 22, 20, 48)   19968       activation_271[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_277 (BatchN (None, 22, 20, 48)   192         conv2d_274[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_272 (Activation)     (None, 22, 20, 48)   0           batch_normalization_277[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_275 (Conv2D)             (None, 22, 20, 12)   5184        activation_272[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_124 (Concatenate)   (None, 22, 20, 428)  0           concatenate_123[0][0]            \n",
      "                                                                 conv2d_275[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_278 (BatchN (None, 22, 20, 428)  1712        concatenate_124[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_273 (Activation)     (None, 22, 20, 428)  0           batch_normalization_278[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_276 (Conv2D)             (None, 22, 20, 48)   20544       activation_273[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_279 (BatchN (None, 22, 20, 48)   192         conv2d_276[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_274 (Activation)     (None, 22, 20, 48)   0           batch_normalization_279[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_277 (Conv2D)             (None, 22, 20, 12)   5184        activation_274[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_125 (Concatenate)   (None, 22, 20, 440)  0           concatenate_124[0][0]            \n",
      "                                                                 conv2d_277[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_280 (BatchN (None, 22, 20, 440)  1760        concatenate_125[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_275 (Activation)     (None, 22, 20, 440)  0           batch_normalization_280[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_278 (Conv2D)             (None, 22, 20, 48)   21120       activation_275[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_281 (BatchN (None, 22, 20, 48)   192         conv2d_278[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_276 (Activation)     (None, 22, 20, 48)   0           batch_normalization_281[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_279 (Conv2D)             (None, 22, 20, 12)   5184        activation_276[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_126 (Concatenate)   (None, 22, 20, 452)  0           concatenate_125[0][0]            \n",
      "                                                                 conv2d_279[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_282 (BatchN (None, 22, 20, 452)  1808        concatenate_126[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_277 (Activation)     (None, 22, 20, 452)  0           batch_normalization_282[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_280 (Conv2D)             (None, 22, 20, 48)   21696       activation_277[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_283 (BatchN (None, 22, 20, 48)   192         conv2d_280[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_278 (Activation)     (None, 22, 20, 48)   0           batch_normalization_283[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_281 (Conv2D)             (None, 22, 20, 12)   5184        activation_278[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_127 (Concatenate)   (None, 22, 20, 464)  0           concatenate_126[0][0]            \n",
      "                                                                 conv2d_281[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_284 (BatchN (None, 22, 20, 464)  1856        concatenate_127[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_279 (Activation)     (None, 22, 20, 464)  0           batch_normalization_284[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_282 (Conv2D)             (None, 22, 20, 48)   22272       activation_279[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_285 (BatchN (None, 22, 20, 48)   192         conv2d_282[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_280 (Activation)     (None, 22, 20, 48)   0           batch_normalization_285[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_283 (Conv2D)             (None, 22, 20, 12)   5184        activation_280[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_128 (Concatenate)   (None, 22, 20, 476)  0           concatenate_127[0][0]            \n",
      "                                                                 conv2d_283[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_286 (BatchN (None, 22, 20, 476)  1904        concatenate_128[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_281 (Activation)     (None, 22, 20, 476)  0           batch_normalization_286[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_284 (Conv2D)             (None, 22, 20, 48)   22848       activation_281[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_287 (BatchN (None, 22, 20, 48)   192         conv2d_284[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_282 (Activation)     (None, 22, 20, 48)   0           batch_normalization_287[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_285 (Conv2D)             (None, 22, 20, 12)   5184        activation_282[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_129 (Concatenate)   (None, 22, 20, 488)  0           concatenate_128[0][0]            \n",
      "                                                                 conv2d_285[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_288 (BatchN (None, 22, 20, 488)  1952        concatenate_129[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_283 (Activation)     (None, 22, 20, 488)  0           batch_normalization_288[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_286 (Conv2D)             (None, 22, 20, 48)   23424       activation_283[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_289 (BatchN (None, 22, 20, 48)   192         conv2d_286[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_284 (Activation)     (None, 22, 20, 48)   0           batch_normalization_289[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_287 (Conv2D)             (None, 22, 20, 12)   5184        activation_284[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_130 (Concatenate)   (None, 22, 20, 500)  0           concatenate_129[0][0]            \n",
      "                                                                 conv2d_287[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_290 (BatchN (None, 22, 20, 500)  2000        concatenate_130[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_285 (Activation)     (None, 22, 20, 500)  0           batch_normalization_290[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_288 (Conv2D)             (None, 22, 20, 48)   24000       activation_285[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_291 (BatchN (None, 22, 20, 48)   192         conv2d_288[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_286 (Activation)     (None, 22, 20, 48)   0           batch_normalization_291[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_289 (Conv2D)             (None, 22, 20, 12)   5184        activation_286[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_131 (Concatenate)   (None, 22, 20, 512)  0           concatenate_130[0][0]            \n",
      "                                                                 conv2d_289[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_292 (BatchN (None, 22, 20, 512)  2048        concatenate_131[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_287 (Activation)     (None, 22, 20, 512)  0           batch_normalization_292[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_290 (Conv2D)             (None, 22, 20, 48)   24576       activation_287[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_293 (BatchN (None, 22, 20, 48)   192         conv2d_290[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_288 (Activation)     (None, 22, 20, 48)   0           batch_normalization_293[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_291 (Conv2D)             (None, 22, 20, 12)   5184        activation_288[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_132 (Concatenate)   (None, 22, 20, 524)  0           concatenate_131[0][0]            \n",
      "                                                                 conv2d_291[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_294 (BatchN (None, 22, 20, 524)  2096        concatenate_132[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_289 (Activation)     (None, 22, 20, 524)  0           batch_normalization_294[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_292 (Conv2D)             (None, 22, 20, 262)  137288      activation_289[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "average_pooling2d_6 (AveragePoo (None, 11, 10, 262)  0           conv2d_292[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_295 (BatchN (None, 11, 10, 262)  1048        average_pooling2d_6[0][0]        \n",
      "__________________________________________________________________________________________________\n",
      "activation_290 (Activation)     (None, 11, 10, 262)  0           batch_normalization_295[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_293 (Conv2D)             (None, 11, 10, 48)   12576       activation_290[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_296 (BatchN (None, 11, 10, 48)   192         conv2d_293[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_291 (Activation)     (None, 11, 10, 48)   0           batch_normalization_296[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_294 (Conv2D)             (None, 11, 10, 12)   5184        activation_291[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_133 (Concatenate)   (None, 11, 10, 274)  0           average_pooling2d_6[0][0]        \n",
      "                                                                 conv2d_294[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_297 (BatchN (None, 11, 10, 274)  1096        concatenate_133[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_292 (Activation)     (None, 11, 10, 274)  0           batch_normalization_297[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_295 (Conv2D)             (None, 11, 10, 48)   13152       activation_292[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_298 (BatchN (None, 11, 10, 48)   192         conv2d_295[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_293 (Activation)     (None, 11, 10, 48)   0           batch_normalization_298[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_296 (Conv2D)             (None, 11, 10, 12)   5184        activation_293[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_134 (Concatenate)   (None, 11, 10, 286)  0           concatenate_133[0][0]            \n",
      "                                                                 conv2d_296[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_299 (BatchN (None, 11, 10, 286)  1144        concatenate_134[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_294 (Activation)     (None, 11, 10, 286)  0           batch_normalization_299[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_297 (Conv2D)             (None, 11, 10, 48)   13728       activation_294[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_300 (BatchN (None, 11, 10, 48)   192         conv2d_297[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_295 (Activation)     (None, 11, 10, 48)   0           batch_normalization_300[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_298 (Conv2D)             (None, 11, 10, 12)   5184        activation_295[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_135 (Concatenate)   (None, 11, 10, 298)  0           concatenate_134[0][0]            \n",
      "                                                                 conv2d_298[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_301 (BatchN (None, 11, 10, 298)  1192        concatenate_135[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_296 (Activation)     (None, 11, 10, 298)  0           batch_normalization_301[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_299 (Conv2D)             (None, 11, 10, 48)   14304       activation_296[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_302 (BatchN (None, 11, 10, 48)   192         conv2d_299[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_297 (Activation)     (None, 11, 10, 48)   0           batch_normalization_302[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_300 (Conv2D)             (None, 11, 10, 12)   5184        activation_297[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_136 (Concatenate)   (None, 11, 10, 310)  0           concatenate_135[0][0]            \n",
      "                                                                 conv2d_300[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_303 (BatchN (None, 11, 10, 310)  1240        concatenate_136[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_298 (Activation)     (None, 11, 10, 310)  0           batch_normalization_303[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_301 (Conv2D)             (None, 11, 10, 48)   14880       activation_298[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_304 (BatchN (None, 11, 10, 48)   192         conv2d_301[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_299 (Activation)     (None, 11, 10, 48)   0           batch_normalization_304[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_302 (Conv2D)             (None, 11, 10, 12)   5184        activation_299[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_137 (Concatenate)   (None, 11, 10, 322)  0           concatenate_136[0][0]            \n",
      "                                                                 conv2d_302[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_305 (BatchN (None, 11, 10, 322)  1288        concatenate_137[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_300 (Activation)     (None, 11, 10, 322)  0           batch_normalization_305[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_303 (Conv2D)             (None, 11, 10, 48)   15456       activation_300[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_306 (BatchN (None, 11, 10, 48)   192         conv2d_303[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_301 (Activation)     (None, 11, 10, 48)   0           batch_normalization_306[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_304 (Conv2D)             (None, 11, 10, 12)   5184        activation_301[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_138 (Concatenate)   (None, 11, 10, 334)  0           concatenate_137[0][0]            \n",
      "                                                                 conv2d_304[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_307 (BatchN (None, 11, 10, 334)  1336        concatenate_138[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_302 (Activation)     (None, 11, 10, 334)  0           batch_normalization_307[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_305 (Conv2D)             (None, 11, 10, 48)   16032       activation_302[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_308 (BatchN (None, 11, 10, 48)   192         conv2d_305[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_303 (Activation)     (None, 11, 10, 48)   0           batch_normalization_308[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_306 (Conv2D)             (None, 11, 10, 12)   5184        activation_303[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_139 (Concatenate)   (None, 11, 10, 346)  0           concatenate_138[0][0]            \n",
      "                                                                 conv2d_306[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_309 (BatchN (None, 11, 10, 346)  1384        concatenate_139[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_304 (Activation)     (None, 11, 10, 346)  0           batch_normalization_309[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_307 (Conv2D)             (None, 11, 10, 48)   16608       activation_304[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_310 (BatchN (None, 11, 10, 48)   192         conv2d_307[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_305 (Activation)     (None, 11, 10, 48)   0           batch_normalization_310[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_308 (Conv2D)             (None, 11, 10, 12)   5184        activation_305[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_140 (Concatenate)   (None, 11, 10, 358)  0           concatenate_139[0][0]            \n",
      "                                                                 conv2d_308[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_311 (BatchN (None, 11, 10, 358)  1432        concatenate_140[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_306 (Activation)     (None, 11, 10, 358)  0           batch_normalization_311[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_309 (Conv2D)             (None, 11, 10, 48)   17184       activation_306[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_312 (BatchN (None, 11, 10, 48)   192         conv2d_309[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_307 (Activation)     (None, 11, 10, 48)   0           batch_normalization_312[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_310 (Conv2D)             (None, 11, 10, 12)   5184        activation_307[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_141 (Concatenate)   (None, 11, 10, 370)  0           concatenate_140[0][0]            \n",
      "                                                                 conv2d_310[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_313 (BatchN (None, 11, 10, 370)  1480        concatenate_141[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_308 (Activation)     (None, 11, 10, 370)  0           batch_normalization_313[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_311 (Conv2D)             (None, 11, 10, 48)   17760       activation_308[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_314 (BatchN (None, 11, 10, 48)   192         conv2d_311[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_309 (Activation)     (None, 11, 10, 48)   0           batch_normalization_314[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_312 (Conv2D)             (None, 11, 10, 12)   5184        activation_309[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_142 (Concatenate)   (None, 11, 10, 382)  0           concatenate_141[0][0]            \n",
      "                                                                 conv2d_312[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_315 (BatchN (None, 11, 10, 382)  1528        concatenate_142[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_310 (Activation)     (None, 11, 10, 382)  0           batch_normalization_315[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_313 (Conv2D)             (None, 11, 10, 48)   18336       activation_310[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_316 (BatchN (None, 11, 10, 48)   192         conv2d_313[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_311 (Activation)     (None, 11, 10, 48)   0           batch_normalization_316[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_314 (Conv2D)             (None, 11, 10, 12)   5184        activation_311[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_143 (Concatenate)   (None, 11, 10, 394)  0           concatenate_142[0][0]            \n",
      "                                                                 conv2d_314[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_317 (BatchN (None, 11, 10, 394)  1576        concatenate_143[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_312 (Activation)     (None, 11, 10, 394)  0           batch_normalization_317[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_315 (Conv2D)             (None, 11, 10, 48)   18912       activation_312[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_318 (BatchN (None, 11, 10, 48)   192         conv2d_315[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_313 (Activation)     (None, 11, 10, 48)   0           batch_normalization_318[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_316 (Conv2D)             (None, 11, 10, 12)   5184        activation_313[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_144 (Concatenate)   (None, 11, 10, 406)  0           concatenate_143[0][0]            \n",
      "                                                                 conv2d_316[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_319 (BatchN (None, 11, 10, 406)  1624        concatenate_144[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_314 (Activation)     (None, 11, 10, 406)  0           batch_normalization_319[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_317 (Conv2D)             (None, 11, 10, 48)   19488       activation_314[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_320 (BatchN (None, 11, 10, 48)   192         conv2d_317[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_315 (Activation)     (None, 11, 10, 48)   0           batch_normalization_320[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_318 (Conv2D)             (None, 11, 10, 12)   5184        activation_315[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_145 (Concatenate)   (None, 11, 10, 418)  0           concatenate_144[0][0]            \n",
      "                                                                 conv2d_318[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_321 (BatchN (None, 11, 10, 418)  1672        concatenate_145[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_316 (Activation)     (None, 11, 10, 418)  0           batch_normalization_321[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_319 (Conv2D)             (None, 11, 10, 48)   20064       activation_316[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_322 (BatchN (None, 11, 10, 48)   192         conv2d_319[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_317 (Activation)     (None, 11, 10, 48)   0           batch_normalization_322[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_320 (Conv2D)             (None, 11, 10, 12)   5184        activation_317[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_146 (Concatenate)   (None, 11, 10, 430)  0           concatenate_145[0][0]            \n",
      "                                                                 conv2d_320[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_323 (BatchN (None, 11, 10, 430)  1720        concatenate_146[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_318 (Activation)     (None, 11, 10, 430)  0           batch_normalization_323[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_321 (Conv2D)             (None, 11, 10, 48)   20640       activation_318[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_324 (BatchN (None, 11, 10, 48)   192         conv2d_321[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_319 (Activation)     (None, 11, 10, 48)   0           batch_normalization_324[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_322 (Conv2D)             (None, 11, 10, 12)   5184        activation_319[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_147 (Concatenate)   (None, 11, 10, 442)  0           concatenate_146[0][0]            \n",
      "                                                                 conv2d_322[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_325 (BatchN (None, 11, 10, 442)  1768        concatenate_147[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_320 (Activation)     (None, 11, 10, 442)  0           batch_normalization_325[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_323 (Conv2D)             (None, 11, 10, 48)   21216       activation_320[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_326 (BatchN (None, 11, 10, 48)   192         conv2d_323[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_321 (Activation)     (None, 11, 10, 48)   0           batch_normalization_326[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_324 (Conv2D)             (None, 11, 10, 12)   5184        activation_321[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_148 (Concatenate)   (None, 11, 10, 454)  0           concatenate_147[0][0]            \n",
      "                                                                 conv2d_324[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_327 (BatchN (None, 11, 10, 454)  1816        concatenate_148[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_322 (Activation)     (None, 11, 10, 454)  0           batch_normalization_327[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_325 (Conv2D)             (None, 11, 10, 48)   21792       activation_322[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_328 (BatchN (None, 11, 10, 48)   192         conv2d_325[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_323 (Activation)     (None, 11, 10, 48)   0           batch_normalization_328[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_326 (Conv2D)             (None, 11, 10, 12)   5184        activation_323[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_149 (Concatenate)   (None, 11, 10, 466)  0           concatenate_148[0][0]            \n",
      "                                                                 conv2d_326[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_329 (BatchN (None, 11, 10, 466)  1864        concatenate_149[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_324 (Activation)     (None, 11, 10, 466)  0           batch_normalization_329[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_327 (Conv2D)             (None, 11, 10, 48)   22368       activation_324[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_330 (BatchN (None, 11, 10, 48)   192         conv2d_327[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_325 (Activation)     (None, 11, 10, 48)   0           batch_normalization_330[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_328 (Conv2D)             (None, 11, 10, 12)   5184        activation_325[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_150 (Concatenate)   (None, 11, 10, 478)  0           concatenate_149[0][0]            \n",
      "                                                                 conv2d_328[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_331 (BatchN (None, 11, 10, 478)  1912        concatenate_150[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_326 (Activation)     (None, 11, 10, 478)  0           batch_normalization_331[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_329 (Conv2D)             (None, 11, 10, 48)   22944       activation_326[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_332 (BatchN (None, 11, 10, 48)   192         conv2d_329[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_327 (Activation)     (None, 11, 10, 48)   0           batch_normalization_332[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_330 (Conv2D)             (None, 11, 10, 12)   5184        activation_327[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_151 (Concatenate)   (None, 11, 10, 490)  0           concatenate_150[0][0]            \n",
      "                                                                 conv2d_330[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_333 (BatchN (None, 11, 10, 490)  1960        concatenate_151[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_328 (Activation)     (None, 11, 10, 490)  0           batch_normalization_333[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_331 (Conv2D)             (None, 11, 10, 48)   23520       activation_328[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_334 (BatchN (None, 11, 10, 48)   192         conv2d_331[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_329 (Activation)     (None, 11, 10, 48)   0           batch_normalization_334[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_332 (Conv2D)             (None, 11, 10, 12)   5184        activation_329[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_152 (Concatenate)   (None, 11, 10, 502)  0           concatenate_151[0][0]            \n",
      "                                                                 conv2d_332[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_335 (BatchN (None, 11, 10, 502)  2008        concatenate_152[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_330 (Activation)     (None, 11, 10, 502)  0           batch_normalization_335[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_333 (Conv2D)             (None, 11, 10, 48)   24096       activation_330[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_336 (BatchN (None, 11, 10, 48)   192         conv2d_333[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_331 (Activation)     (None, 11, 10, 48)   0           batch_normalization_336[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_334 (Conv2D)             (None, 11, 10, 12)   5184        activation_331[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_153 (Concatenate)   (None, 11, 10, 514)  0           concatenate_152[0][0]            \n",
      "                                                                 conv2d_334[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_337 (BatchN (None, 11, 10, 514)  2056        concatenate_153[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_332 (Activation)     (None, 11, 10, 514)  0           batch_normalization_337[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_335 (Conv2D)             (None, 11, 10, 48)   24672       activation_332[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_338 (BatchN (None, 11, 10, 48)   192         conv2d_335[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_333 (Activation)     (None, 11, 10, 48)   0           batch_normalization_338[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_336 (Conv2D)             (None, 11, 10, 12)   5184        activation_333[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_154 (Concatenate)   (None, 11, 10, 526)  0           concatenate_153[0][0]            \n",
      "                                                                 conv2d_336[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_339 (BatchN (None, 11, 10, 526)  2104        concatenate_154[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_334 (Activation)     (None, 11, 10, 526)  0           batch_normalization_339[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_337 (Conv2D)             (None, 11, 10, 48)   25248       activation_334[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_340 (BatchN (None, 11, 10, 48)   192         conv2d_337[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_335 (Activation)     (None, 11, 10, 48)   0           batch_normalization_340[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_338 (Conv2D)             (None, 11, 10, 12)   5184        activation_335[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_155 (Concatenate)   (None, 11, 10, 538)  0           concatenate_154[0][0]            \n",
      "                                                                 conv2d_338[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_341 (BatchN (None, 11, 10, 538)  2152        concatenate_155[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "activation_336 (Activation)     (None, 11, 10, 538)  0           batch_normalization_341[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_339 (Conv2D)             (None, 11, 10, 48)   25824       activation_336[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_342 (BatchN (None, 11, 10, 48)   192         conv2d_339[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "activation_337 (Activation)     (None, 11, 10, 48)   0           batch_normalization_342[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "conv2d_340 (Conv2D)             (None, 11, 10, 12)   5184        activation_337[0][0]             \n",
      "__________________________________________________________________________________________________\n",
      "concatenate_156 (Concatenate)   (None, 11, 10, 550)  0           concatenate_155[0][0]            \n",
      "                                                                 conv2d_340[0][0]                 \n",
      "__________________________________________________________________________________________________\n",
      "batch_normalization_343 (BatchN (None, 11, 10, 550)  2200        concatenate_156[0][0]            \n",
      "__________________________________________________________________________________________________\n",
      "feature (Activation)            (None, 11, 10, 550)  0           batch_normalization_343[0][0]    \n",
      "__________________________________________________________________________________________________\n",
      "global_average_pooling2d_3 (Glo (None, 550)          0           feature[0][0]                    \n",
      "__________________________________________________________________________________________________\n",
      "dense_3 (Dense)                 (None, 4)            2204        global_average_pooling2d_3[0][0] \n",
      "==================================================================================================\n",
      "Total params: 1,727,268\n",
      "Trainable params: 1,673,144\n",
      "Non-trainable params: 54,124\n",
      "__________________________________________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "# use this environment flag to change which GPU to use \n",
    "os.environ[\"CUDA_VISIBLE_DEVICES\"]=\"-1\"  # specify which GPU(s) to be used\n",
    "\n",
    "vggModel = VGG.VGG19((224,224,3),4)\n",
    "vggModel.summary()\n",
    "vggModel.load_weights(\"VGG19_COVID19.h5\") #load weights\n",
    "\n",
    "denseNetModel = densenet.DenseNetImageNet161(input_shape=(352,320,1),classes=4, weights=None)\n",
    "denseNetModel.summary()\n",
    "denseNetModel.load_weights(\"DenseNet161-COVID19.h5\")\n",
    "\n",
    "resNetModel = ResNet18((224, 224, 3), 4, False) \n",
    "resNetModel.summary()\n",
    "resNetModel.load_weights(\"ResNet18_COVID19.h5\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-04-06 13:36:42,952 INFO \n",
      "\n",
      "python      version 3.6.9 (default, Nov  7 2019, 10:44:02) \n",
      "[GCC 8.3.0]\n",
      "numpy       version 1.18.1\n",
      "tensforflow version 1.14.0\n",
      "keras       version 2.3.1\n",
      "2020-04-06 13:36:42,954 INFO Analyzing model 'vgg19' with 27 layers\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "2020-04-06 13:36:48,938 INFO ### Printing results ###\n",
      "2020-04-06 13:36:50,527 INFO Check: min: 0.045774497003477806, max: 2.52199923992157, avg: 1.6923339685113756\n",
      "2020-04-06 13:36:50,529 INFO Check compound: min: 0.045774497003477806, max: 2.097424887050916, avg: 1.4344983971406537\n",
      "2020-04-06 13:36:50,530 INFO CheckTF: min: False, max: True, avg: 0.11594202898550725\n",
      "2020-04-06 13:36:50,531 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.13742690058479531\n",
      "2020-04-06 13:36:50,531 INFO Norm: min: 11.192625999450684, max: 20.506975173950195, avg: 15.849800109863281\n",
      "2020-04-06 13:36:50,532 INFO Norm compound: min: 11.192625999450684, max: 20.506975173950195, avg: 15.849800109863281\n",
      "2020-04-06 13:36:50,533 INFO LogNorm: min: 1.0489319562911987, max: 1.311901569366455, avg: 1.1804168224334717\n",
      "2020-04-06 13:36:50,533 INFO LogNorm compound: min: 1.0489319562911987, max: 1.311901569366455, avg: 1.1804168224334717\n",
      "2020-04-06 13:36:50,534 INFO Norm X: min: 14.76302719116211, max: 32.330047607421875, avg: 23.546537399291992\n",
      "2020-04-06 13:36:50,535 INFO Norm X compound: min: 14.76302719116211, max: 32.330047607421875, avg: 23.546537399291992\n",
      "2020-04-06 13:36:50,535 INFO LogNorm X: min: 1.169175386428833, max: 1.5096063613891602, avg: 1.3393908739089966\n",
      "2020-04-06 13:36:50,536 INFO LogNorm X compound: min: 1.169175386428833, max: 1.5096063613891602, avg: 1.3393908739089966\n",
      "2020-04-06 13:36:50,537 INFO Alpha: min: 3.252844132832773, max: 3.471995534009229, avg: 3.3624198334210007\n",
      "2020-04-06 13:36:50,537 INFO Alpha compound: min: 3.252844132832773, max: 3.471995534009229, avg: 3.3624198334210007\n",
      "2020-04-06 13:36:50,538 INFO Alpha Weighted: min: 2.732837337517949, max: 3.875566242211748, avg: 3.3042017898648486\n",
      "2020-04-06 13:36:50,538 INFO Alpha Weighted compound: min: 2.732837337517949, max: 3.875566242211748, avg: 3.3042017898648486\n",
      "2020-04-06 13:36:50,539 INFO alpha pNorm: min: 3.145800914242924, max: 4.1228626484435695, avg: 3.6343317813432465\n",
      "2020-04-06 13:36:50,540 INFO alpha pNorm compound: min: 3.145800914242924, max: 4.1228626484435695, avg: 3.6343317813432465\n",
      "2020-04-06 13:36:50,580 INFO ### Printing results ###\n",
      "2020-04-06 13:36:52,099 INFO Check: min: 0.045774497003477806, max: 2.52199923992157, avg: 1.6923339685113756\n",
      "2020-04-06 13:36:52,100 INFO Check compound: min: 0.045774497003477806, max: 2.097424887050916, avg: 1.4344983971406537\n",
      "2020-04-06 13:36:52,101 INFO CheckTF: min: False, max: True, avg: 0.11594202898550725\n",
      "2020-04-06 13:36:52,102 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.13742690058479531\n",
      "2020-04-06 13:36:52,103 INFO Norm: min: 11.192625999450684, max: 20.506975173950195, avg: 15.849800109863281\n",
      "2020-04-06 13:36:52,103 INFO Norm compound: min: 11.192625999450684, max: 20.506975173950195, avg: 15.849800109863281\n",
      "2020-04-06 13:36:52,104 INFO LogNorm: min: 1.0489319562911987, max: 1.311901569366455, avg: 1.1804168224334717\n",
      "2020-04-06 13:36:52,105 INFO LogNorm compound: min: 1.0489319562911987, max: 1.311901569366455, avg: 1.1804168224334717\n",
      "2020-04-06 13:36:52,105 INFO Norm X: min: 14.76302719116211, max: 32.330047607421875, avg: 23.546537399291992\n",
      "2020-04-06 13:36:52,106 INFO Norm X compound: min: 14.76302719116211, max: 32.330047607421875, avg: 23.546537399291992\n",
      "2020-04-06 13:36:52,107 INFO LogNorm X: min: 1.169175386428833, max: 1.5096063613891602, avg: 1.3393908739089966\n",
      "2020-04-06 13:36:52,107 INFO LogNorm X compound: min: 1.169175386428833, max: 1.5096063613891602, avg: 1.3393908739089966\n",
      "2020-04-06 13:36:52,108 INFO Alpha: min: 3.252844132832773, max: 3.471995534009229, avg: 3.3624198334210007\n",
      "2020-04-06 13:36:52,109 INFO Alpha compound: min: 3.252844132832773, max: 3.471995534009229, avg: 3.3624198334210007\n",
      "2020-04-06 13:36:52,109 INFO Alpha Weighted: min: 2.732837337517949, max: 3.875566242211748, avg: 3.3042017898648486\n",
      "2020-04-06 13:36:52,110 INFO Alpha Weighted compound: min: 2.732837337517949, max: 3.875566242211748, avg: 3.3042017898648486\n",
      "2020-04-06 13:36:52,111 INFO alpha pNorm: min: 3.145800914242924, max: 4.1228626484435695, avg: 3.6343317813432465\n",
      "2020-04-06 13:36:52,111 INFO alpha pNorm compound: min: 3.145800914242924, max: 4.1228626484435695, avg: 3.6343317813432465\n",
      "2020-04-06 13:36:52,131 INFO ### Printing results ###\n",
      "2020-04-06 13:36:53,642 INFO Check: min: 0.045774497003477806, max: 2.52199923992157, avg: 1.6923339685113756\n",
      "2020-04-06 13:36:53,643 INFO Check compound: min: 0.045774497003477806, max: 2.097424887050916, avg: 1.4344983971406537\n",
      "2020-04-06 13:36:53,644 INFO CheckTF: min: False, max: True, avg: 0.11594202898550725\n",
      "2020-04-06 13:36:53,644 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.13742690058479531\n",
      "2020-04-06 13:36:53,645 INFO Norm: min: 11.192625999450684, max: 20.506975173950195, avg: 15.849800109863281\n",
      "2020-04-06 13:36:53,646 INFO Norm compound: min: 11.192625999450684, max: 20.506975173950195, avg: 15.849800109863281\n",
      "2020-04-06 13:36:53,646 INFO LogNorm: min: 1.0489319562911987, max: 1.311901569366455, avg: 1.1804168224334717\n",
      "2020-04-06 13:36:53,647 INFO LogNorm compound: min: 1.0489319562911987, max: 1.311901569366455, avg: 1.1804168224334717\n",
      "2020-04-06 13:36:53,648 INFO Norm X: min: 14.76302719116211, max: 32.330047607421875, avg: 23.546537399291992\n",
      "2020-04-06 13:36:53,648 INFO Norm X compound: min: 14.76302719116211, max: 32.330047607421875, avg: 23.546537399291992\n",
      "2020-04-06 13:36:53,649 INFO LogNorm X: min: 1.169175386428833, max: 1.5096063613891602, avg: 1.3393908739089966\n",
      "2020-04-06 13:36:53,650 INFO LogNorm X compound: min: 1.169175386428833, max: 1.5096063613891602, avg: 1.3393908739089966\n",
      "2020-04-06 13:36:53,651 INFO Alpha: min: 3.252844132832773, max: 3.471995534009229, avg: 3.3624198334210007\n",
      "2020-04-06 13:36:53,651 INFO Alpha compound: min: 3.252844132832773, max: 3.471995534009229, avg: 3.3624198334210007\n",
      "2020-04-06 13:36:53,652 INFO Alpha Weighted: min: 2.732837337517949, max: 3.875566242211748, avg: 3.3042017898648486\n",
      "2020-04-06 13:36:53,653 INFO Alpha Weighted compound: min: 2.732837337517949, max: 3.875566242211748, avg: 3.3042017898648486\n",
      "2020-04-06 13:36:53,654 INFO alpha pNorm: min: 3.145800914242924, max: 4.1228626484435695, avg: 3.6343317813432465\n",
      "2020-04-06 13:36:53,654 INFO alpha pNorm compound: min: 3.145800914242924, max: 4.1228626484435695, avg: 3.6343317813432465\n"
     ]
    }
   ],
   "source": [
    "vggWatcher = ww.WeightWatcher(model=vggModel)\n",
    "resultsVGG = vggWatcher.analyze(alphas=True)\n",
    "\n",
    "vggWatcher.print_results()\n",
    "vggWatcher.get_summary()\n",
    "\n",
    "vggWatcherDetails = vggWatcher.get_details(results=resultsVGG)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-04-06 13:38:18,682 INFO Analyzing model 'vgg19' with 27 layers\n",
      "2020-04-06 13:38:18,711 INFO ### Printing results ###\n",
      "2020-04-06 13:38:20,197 INFO Check: min: 0.6080794334411621, max: 2.52199923992157, avg: 1.7278308049353475\n",
      "2020-04-06 13:38:20,199 INFO Check compound: min: 0.7667776478661432, max: 2.097424887050916, avg: 1.6856587848359077\n",
      "2020-04-06 13:38:20,200 INFO CheckTF: min: False, max: True, avg: 0.11851851851851852\n",
      "2020-04-06 13:38:20,201 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.16319444444444445\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Layer 23, Slice 0: Lognorm: 1.311901569366455\n",
      "Layer 25, Slice 0: Lognorm: 1.0489319562911987\n"
     ]
    }
   ],
   "source": [
    "vggWatcher.analyze(layers=ww.LAYER_TYPE.CONV2D)\n",
    "\n",
    "for layer_id, result in resultsVGG.items():\n",
    "    for slice_id, summary in result.items():\n",
    "        if not str(slice_id).isdigit() or \"lognorm\" not in summary:\n",
    "            continue\n",
    "        lognorm = summary[\"lognorm\"]\n",
    "        print(\"Layer {}, Slice {}: Lognorm: {}\".format(layer_id, slice_id, lognorm))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-04-06 13:38:32,258 INFO \n",
      "\n",
      "python      version 3.6.9 (default, Nov  7 2019, 10:44:02) \n",
      "[GCC 8.3.0]\n",
      "numpy       version 1.18.1\n",
      "tensforflow version 1.14.0\n",
      "keras       version 2.3.1\n",
      "2020-04-06 13:38:32,260 INFO Analyzing model 'model_1' with 71 layers\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:1178: RuntimeWarning: overflow encountered in double_scalars\n",
      "  return (self.alpha-1) * self.xmin**(self.alpha-1)\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:825: RuntimeWarning: invalid value encountered in multiply\n",
      "  likelihoods = f*C\n",
      "/home/reza/.local/lib/python3.6/site-packages/scipy/optimize/optimize.py:597: RuntimeWarning: invalid value encountered in subtract\n",
      "  numpy.max(numpy.abs(fsim[0] - fsim[1:])) <= fatol):\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:1178: RuntimeWarning: overflow encountered in double_scalars\n",
      "  return (self.alpha-1) * self.xmin**(self.alpha-1)\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:825: RuntimeWarning: invalid value encountered in multiply\n",
      "  likelihoods = f*C\n",
      "2020-04-06 13:40:22,729 INFO ### Printing results ###\n",
      "2020-04-06 13:40:25,493 INFO Check: min: 0.0687838253571731, max: 2.6714299045925975, avg: 1.8358768564367505\n",
      "2020-04-06 13:40:25,494 INFO Check compound: min: 0.0687838253571731, max: 2.644141827897842, avg: 1.3959555377444473\n",
      "2020-04-06 13:40:25,495 INFO CheckTF: min: False, max: True, avg: 0.36363636363636365\n",
      "2020-04-06 13:40:25,495 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.36363636363636365\n",
      "2020-04-06 13:40:25,495 INFO Norm: min: 5.872817039489746, max: 42.411502838134766, avg: 18.97556495666504\n",
      "2020-04-06 13:40:25,496 INFO Norm compound: min: 5.987733840942383, max: 42.30625915527344, avg: 17.617650985717773\n",
      "2020-04-06 13:40:25,496 INFO LogNorm: min: 0.7688464522361755, max: 1.627483606338501, avg: 1.1756139993667603\n",
      "2020-04-06 13:40:25,497 INFO LogNorm compound: min: 0.7772339582443237, max: 1.6264044046401978, avg: 1.1485332250595093\n",
      "2020-04-06 13:40:25,497 INFO Norm X: min: 6.319842338562012, max: 112.54231262207031, avg: 40.16720962524414\n",
      "2020-04-06 13:40:25,498 INFO Norm X compound: min: 6.642741680145264, max: 112.0230941772461, avg: 35.7081184387207\n",
      "2020-04-06 13:40:25,498 INFO LogNorm X: min: 0.8007062673568726, max: 2.0513157844543457, avg: 1.4004671573638916\n",
      "2020-04-06 13:40:25,498 INFO LogNorm X compound: min: 0.8222110867500305, max: 2.0493063926696777, avg: 1.3540605306625366\n",
      "2020-04-06 13:40:25,499 INFO Alpha: min: 2.167268105433349, max: 36.872562539551716, avg: 7.09130578806354\n",
      "2020-04-06 13:40:25,499 INFO Alpha compound: min: 3.054906918861283, max: 17.77753251201929, avg: 7.29421993982055\n",
      "2020-04-06 13:40:25,500 INFO Alpha Weighted: min: 0.8675124598567006, max: 41.628184955702785, avg: 6.185212863227486\n",
      "2020-04-06 13:40:25,500 INFO Alpha Weighted compound: min: 1.4615840983729387, max: 17.257446308671124, avg: 5.866663230776017\n",
      "2020-04-06 13:40:25,501 INFO alpha pNorm: min: 1.695151557789734, max: 42.012403135030645, avg: 6.902904322879155\n",
      "2020-04-06 13:40:25,501 INFO alpha pNorm compound: min: 1.99271615177675, max: 18.108822201113625, avg: 6.572306473928502\n",
      "2020-04-06 13:40:25,518 INFO ### Printing results ###\n",
      "2020-04-06 13:40:28,284 INFO Check: min: 0.0687838253571731, max: 2.6714299045925975, avg: 1.8358768564367505\n",
      "2020-04-06 13:40:28,284 INFO Check compound: min: 0.0687838253571731, max: 2.644141827897842, avg: 1.3959555377444473\n",
      "2020-04-06 13:40:28,285 INFO CheckTF: min: False, max: True, avg: 0.36363636363636365\n",
      "2020-04-06 13:40:28,285 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.36363636363636365\n",
      "2020-04-06 13:40:28,286 INFO Norm: min: 5.872817039489746, max: 42.411502838134766, avg: 18.97556495666504\n",
      "2020-04-06 13:40:28,286 INFO Norm compound: min: 5.987733840942383, max: 42.30625915527344, avg: 17.617650985717773\n",
      "2020-04-06 13:40:28,287 INFO LogNorm: min: 0.7688464522361755, max: 1.627483606338501, avg: 1.1756139993667603\n",
      "2020-04-06 13:40:28,287 INFO LogNorm compound: min: 0.7772339582443237, max: 1.6264044046401978, avg: 1.1485332250595093\n",
      "2020-04-06 13:40:28,287 INFO Norm X: min: 6.319842338562012, max: 112.54231262207031, avg: 40.16720962524414\n",
      "2020-04-06 13:40:28,288 INFO Norm X compound: min: 6.642741680145264, max: 112.0230941772461, avg: 35.7081184387207\n",
      "2020-04-06 13:40:28,288 INFO LogNorm X: min: 0.8007062673568726, max: 2.0513157844543457, avg: 1.4004671573638916\n",
      "2020-04-06 13:40:28,289 INFO LogNorm X compound: min: 0.8222110867500305, max: 2.0493063926696777, avg: 1.3540605306625366\n",
      "2020-04-06 13:40:28,289 INFO Alpha: min: 2.167268105433349, max: 36.872562539551716, avg: 7.09130578806354\n",
      "2020-04-06 13:40:28,290 INFO Alpha compound: min: 3.054906918861283, max: 17.77753251201929, avg: 7.29421993982055\n",
      "2020-04-06 13:40:28,290 INFO Alpha Weighted: min: 0.8675124598567006, max: 41.628184955702785, avg: 6.185212863227486\n",
      "2020-04-06 13:40:28,290 INFO Alpha Weighted compound: min: 1.4615840983729387, max: 17.257446308671124, avg: 5.866663230776017\n",
      "2020-04-06 13:40:28,291 INFO alpha pNorm: min: 1.695151557789734, max: 42.012403135030645, avg: 6.902904322879155\n",
      "2020-04-06 13:40:28,291 INFO alpha pNorm compound: min: 1.99271615177675, max: 18.108822201113625, avg: 6.572306473928502\n",
      "2020-04-06 13:40:28,308 INFO ### Printing results ###\n",
      "2020-04-06 13:40:31,076 INFO Check: min: 0.0687838253571731, max: 2.6714299045925975, avg: 1.8358768564367505\n",
      "2020-04-06 13:40:31,076 INFO Check compound: min: 0.0687838253571731, max: 2.644141827897842, avg: 1.3959555377444473\n",
      "2020-04-06 13:40:31,077 INFO CheckTF: min: False, max: True, avg: 0.36363636363636365\n",
      "2020-04-06 13:40:31,077 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.36363636363636365\n",
      "2020-04-06 13:40:31,078 INFO Norm: min: 5.872817039489746, max: 42.411502838134766, avg: 18.97556495666504\n",
      "2020-04-06 13:40:31,078 INFO Norm compound: min: 5.987733840942383, max: 42.30625915527344, avg: 17.617650985717773\n",
      "2020-04-06 13:40:31,079 INFO LogNorm: min: 0.7688464522361755, max: 1.627483606338501, avg: 1.1756139993667603\n",
      "2020-04-06 13:40:31,080 INFO LogNorm compound: min: 0.7772339582443237, max: 1.6264044046401978, avg: 1.1485332250595093\n",
      "2020-04-06 13:40:31,080 INFO Norm X: min: 6.319842338562012, max: 112.54231262207031, avg: 40.16720962524414\n",
      "2020-04-06 13:40:31,081 INFO Norm X compound: min: 6.642741680145264, max: 112.0230941772461, avg: 35.7081184387207\n",
      "2020-04-06 13:40:31,081 INFO LogNorm X: min: 0.8007062673568726, max: 2.0513157844543457, avg: 1.4004671573638916\n",
      "2020-04-06 13:40:31,081 INFO LogNorm X compound: min: 0.8222110867500305, max: 2.0493063926696777, avg: 1.3540605306625366\n",
      "2020-04-06 13:40:31,082 INFO Alpha: min: 2.167268105433349, max: 36.872562539551716, avg: 7.09130578806354\n",
      "2020-04-06 13:40:31,082 INFO Alpha compound: min: 3.054906918861283, max: 17.77753251201929, avg: 7.29421993982055\n",
      "2020-04-06 13:40:31,083 INFO Alpha Weighted: min: 0.8675124598567006, max: 41.628184955702785, avg: 6.185212863227486\n",
      "2020-04-06 13:40:31,083 INFO Alpha Weighted compound: min: 1.4615840983729387, max: 17.257446308671124, avg: 5.866663230776017\n",
      "2020-04-06 13:40:31,084 INFO alpha pNorm: min: 1.695151557789734, max: 42.012403135030645, avg: 6.902904322879155\n",
      "2020-04-06 13:40:31,085 INFO alpha pNorm compound: min: 1.99271615177675, max: 18.108822201113625, avg: 6.572306473928502\n"
     ]
    }
   ],
   "source": [
    "resnetWatcher = ww.WeightWatcher(model=resNetModel)\n",
    "resultsResNet = resnetWatcher.analyze(alphas=True)\n",
    "\n",
    "resnetWatcher.print_results()\n",
    "resnetWatcher.get_summary()\n",
    "\n",
    "renetWatcherDetails = resnetWatcher.get_details(results=resultsResNet)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-02-17 23:44:47,209 INFO Analyzing model 'model_1' with 127 layers\n",
      "2020-02-17 23:44:47,442 INFO ### Printing results ###\n",
      "2020-02-17 23:44:51,547 INFO Check: min: 0.03055666800210663, max: 1.174803615616177, avg: 0.75461311809406\n",
      "2020-02-17 23:44:51,548 INFO Check compound: min: 0.03055666800210663, max: 1.171422623526532, avg: 0.6850104940206393\n",
      "2020-02-17 23:44:51,549 INFO CheckTF: min: False, max: True, avg: 0.8321917808219178\n",
      "2020-02-17 23:44:51,549 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.75\n",
      "2020-02-17 23:44:51,550 INFO Norm: min: 2.481132745742798, max: 18.79686164855957, avg: 8.44815731048584\n",
      "2020-02-17 23:44:51,551 INFO Norm compound: min: 2.522228717803955, max: 18.74276351928711, avg: 8.113859176635742\n",
      "2020-02-17 23:44:51,551 INFO LogNorm: min: 0.3946499824523926, max: 1.2740854024887085, avg: 0.8404216170310974\n",
      "2020-02-17 23:44:51,552 INFO LogNorm compound: min: 0.4017566442489624, max: 1.2728333473205566, avg: 0.8240067958831787\n",
      "2020-02-17 23:44:51,553 INFO Norm X: min: 1.1169742345809937, max: 22.092660903930664, avg: 7.6573662757873535\n",
      "2020-02-17 23:44:51,553 INFO Norm X compound: min: 1.1598626375198364, max: 21.97178077697754, avg: 7.19776725769043\n",
      "2020-02-17 23:44:51,554 INFO LogNorm X: min: 0.048043157905340195, max: 1.3442480564117432, avg: 0.7077904343605042\n",
      "2020-02-17 23:44:51,554 INFO LogNorm X compound: min: 0.06434845924377441, max: 1.3418642282485962, avg: 0.6814104318618774\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Layer 5, Slice 0: Lognorm: 0.45505785942077637\n",
      "Layer 5, Slice 1: Lognorm: 0.466656893491745\n",
      "Layer 5, Slice 2: Lognorm: 0.4717792868614197\n",
      "Layer 5, Slice 3: Lognorm: 0.46813076734542847\n",
      "Layer 5, Slice 4: Lognorm: 0.46588632464408875\n",
      "Layer 5, Slice 5: Lognorm: 0.47582072019577026\n",
      "Layer 5, Slice 6: Lognorm: 0.464699387550354\n",
      "Layer 5, Slice 7: Lognorm: 0.4623936414718628\n",
      "Layer 5, Slice 8: Lognorm: 0.46986302733421326\n",
      "Layer 7, Slice 0: Lognorm: 0.457430899143219\n",
      "Layer 10, Slice 0: Lognorm: 0.4125364422798157\n",
      "Layer 10, Slice 1: Lognorm: 0.4140439033508301\n",
      "Layer 10, Slice 2: Lognorm: 0.4220924377441406\n",
      "Layer 10, Slice 3: Lognorm: 0.4108112156391144\n",
      "Layer 10, Slice 4: Lognorm: 0.4176965057849884\n",
      "Layer 10, Slice 5: Lognorm: 0.4095495045185089\n",
      "Layer 10, Slice 6: Lognorm: 0.41007551550865173\n",
      "Layer 10, Slice 7: Lognorm: 0.4107871353626251\n",
      "Layer 10, Slice 8: Lognorm: 0.41786688566207886\n",
      "Layer 14, Slice 0: Lognorm: 0.42499804496765137\n",
      "Layer 14, Slice 1: Lognorm: 0.40750980377197266\n",
      "Layer 14, Slice 2: Lognorm: 0.41395631432533264\n",
      "Layer 14, Slice 3: Lognorm: 0.4231501519680023\n",
      "Layer 14, Slice 4: Lognorm: 0.4018558859825134\n",
      "Layer 14, Slice 5: Lognorm: 0.41360753774642944\n",
      "Layer 14, Slice 6: Lognorm: 0.4224792718887329\n",
      "Layer 14, Slice 7: Lognorm: 0.42628347873687744\n",
      "Layer 14, Slice 8: Lognorm: 0.417827308177948\n",
      "Layer 17, Slice 0: Lognorm: 0.4136447310447693\n",
      "Layer 17, Slice 1: Lognorm: 0.4083113670349121\n",
      "Layer 17, Slice 2: Lognorm: 0.42101094126701355\n",
      "Layer 17, Slice 3: Lognorm: 0.4197181761264801\n",
      "Layer 17, Slice 4: Lognorm: 0.40751951932907104\n",
      "Layer 17, Slice 5: Lognorm: 0.41531604528427124\n",
      "Layer 17, Slice 6: Lognorm: 0.4172665476799011\n",
      "Layer 17, Slice 7: Lognorm: 0.41146034002304077\n",
      "Layer 17, Slice 8: Lognorm: 0.4150124788284302\n",
      "Layer 21, Slice 0: Lognorm: 0.40195217728614807\n",
      "Layer 21, Slice 1: Lognorm: 0.4070086181163788\n",
      "Layer 21, Slice 2: Lognorm: 0.40973103046417236\n",
      "Layer 21, Slice 3: Lognorm: 0.4061116576194763\n",
      "Layer 21, Slice 4: Lognorm: 0.3946499824523926\n",
      "Layer 21, Slice 5: Lognorm: 0.3948496878147125\n",
      "Layer 21, Slice 6: Lognorm: 0.4021182954311371\n",
      "Layer 21, Slice 7: Lognorm: 0.4002382159233093\n",
      "Layer 21, Slice 8: Lognorm: 0.3991500437259674\n",
      "Layer 24, Slice 0: Lognorm: 0.3997442126274109\n",
      "Layer 24, Slice 1: Lognorm: 0.4016261696815491\n",
      "Layer 24, Slice 2: Lognorm: 0.40429621934890747\n",
      "Layer 24, Slice 3: Lognorm: 0.4039909243583679\n",
      "Layer 24, Slice 4: Lognorm: 0.4118358790874481\n",
      "Layer 24, Slice 5: Lognorm: 0.4028964638710022\n",
      "Layer 24, Slice 6: Lognorm: 0.4040057957172394\n",
      "Layer 24, Slice 7: Lognorm: 0.40782538056373596\n",
      "Layer 24, Slice 8: Lognorm: 0.4001040458679199\n",
      "Layer 28, Slice 0: Lognorm: 0.5612004995346069\n",
      "Layer 28, Slice 1: Lognorm: 0.5566765069961548\n",
      "Layer 28, Slice 2: Lognorm: 0.5645307302474976\n",
      "Layer 28, Slice 3: Lognorm: 0.5442777872085571\n",
      "Layer 28, Slice 4: Lognorm: 0.5450095534324646\n",
      "Layer 28, Slice 5: Lognorm: 0.544856607913971\n",
      "Layer 28, Slice 6: Lognorm: 0.5535491108894348\n",
      "Layer 28, Slice 7: Lognorm: 0.548865020275116\n",
      "Layer 28, Slice 8: Lognorm: 0.5468845367431641\n",
      "Layer 30, Slice 0: Lognorm: 0.5974183678627014\n",
      "Layer 33, Slice 0: Lognorm: 0.6966328620910645\n",
      "Layer 33, Slice 1: Lognorm: 0.6965732574462891\n",
      "Layer 33, Slice 2: Lognorm: 0.6989260315895081\n",
      "Layer 33, Slice 3: Lognorm: 0.6961823105812073\n",
      "Layer 33, Slice 4: Lognorm: 0.690949559211731\n",
      "Layer 33, Slice 5: Lognorm: 0.6955418586730957\n",
      "Layer 33, Slice 6: Lognorm: 0.6931976079940796\n",
      "Layer 33, Slice 7: Lognorm: 0.692370593547821\n",
      "Layer 33, Slice 8: Lognorm: 0.6981958150863647\n",
      "Layer 37, Slice 0: Lognorm: 0.6899280548095703\n",
      "Layer 37, Slice 1: Lognorm: 0.6891337633132935\n",
      "Layer 37, Slice 2: Lognorm: 0.6929138898849487\n",
      "Layer 37, Slice 3: Lognorm: 0.6859428882598877\n",
      "Layer 37, Slice 4: Lognorm: 0.6824015378952026\n",
      "Layer 37, Slice 5: Lognorm: 0.6860530972480774\n",
      "Layer 37, Slice 6: Lognorm: 0.6933414936065674\n",
      "Layer 37, Slice 7: Lognorm: 0.6926486492156982\n",
      "Layer 37, Slice 8: Lognorm: 0.6911203265190125\n",
      "Layer 40, Slice 0: Lognorm: 0.6940612196922302\n",
      "Layer 40, Slice 1: Lognorm: 0.6899809241294861\n",
      "Layer 40, Slice 2: Lognorm: 0.6921338438987732\n",
      "Layer 40, Slice 3: Lognorm: 0.6852380037307739\n",
      "Layer 40, Slice 4: Lognorm: 0.6846174001693726\n",
      "Layer 40, Slice 5: Lognorm: 0.6887117028236389\n",
      "Layer 40, Slice 6: Lognorm: 0.6916100382804871\n",
      "Layer 40, Slice 7: Lognorm: 0.6890596747398376\n",
      "Layer 40, Slice 8: Lognorm: 0.6885004639625549\n",
      "Layer 44, Slice 0: Lognorm: 0.6895345449447632\n",
      "Layer 44, Slice 1: Lognorm: 0.6872230172157288\n",
      "Layer 44, Slice 2: Lognorm: 0.6863046288490295\n",
      "Layer 44, Slice 3: Lognorm: 0.684074342250824\n",
      "Layer 44, Slice 4: Lognorm: 0.6796380877494812\n",
      "Layer 44, Slice 5: Lognorm: 0.6862270832061768\n",
      "Layer 44, Slice 6: Lognorm: 0.6889829635620117\n",
      "Layer 44, Slice 7: Lognorm: 0.6832953691482544\n",
      "Layer 44, Slice 8: Lognorm: 0.6876701712608337\n",
      "Layer 47, Slice 0: Lognorm: 0.6858987808227539\n",
      "Layer 47, Slice 1: Lognorm: 0.6854842901229858\n",
      "Layer 47, Slice 2: Lognorm: 0.6837552785873413\n",
      "Layer 47, Slice 3: Lognorm: 0.6881158947944641\n",
      "Layer 47, Slice 4: Lognorm: 0.6830309629440308\n",
      "Layer 47, Slice 5: Lognorm: 0.6878384351730347\n",
      "Layer 47, Slice 6: Lognorm: 0.6843897700309753\n",
      "Layer 47, Slice 7: Lognorm: 0.685117781162262\n",
      "Layer 47, Slice 8: Lognorm: 0.6854130625724792\n",
      "Layer 51, Slice 0: Lognorm: 0.6857607960700989\n",
      "Layer 51, Slice 1: Lognorm: 0.6855573058128357\n",
      "Layer 51, Slice 2: Lognorm: 0.6847688555717468\n",
      "Layer 51, Slice 3: Lognorm: 0.6779119968414307\n",
      "Layer 51, Slice 4: Lognorm: 0.6808596849441528\n",
      "Layer 51, Slice 5: Lognorm: 0.6807131767272949\n",
      "Layer 51, Slice 6: Lognorm: 0.6808498501777649\n",
      "Layer 51, Slice 7: Lognorm: 0.6864469051361084\n",
      "Layer 51, Slice 8: Lognorm: 0.6829983592033386\n",
      "Layer 54, Slice 0: Lognorm: 0.6817869544029236\n",
      "Layer 54, Slice 1: Lognorm: 0.6880894899368286\n",
      "Layer 54, Slice 2: Lognorm: 0.6814453601837158\n",
      "Layer 54, Slice 3: Lognorm: 0.6856974363327026\n",
      "Layer 54, Slice 4: Lognorm: 0.6820504069328308\n",
      "Layer 54, Slice 5: Lognorm: 0.6831361651420593\n",
      "Layer 54, Slice 6: Lognorm: 0.6827602386474609\n",
      "Layer 54, Slice 7: Lognorm: 0.6840139031410217\n",
      "Layer 54, Slice 8: Lognorm: 0.6813967823982239\n",
      "Layer 58, Slice 0: Lognorm: 0.8478434085845947\n",
      "Layer 58, Slice 1: Lognorm: 0.8462831377983093\n",
      "Layer 58, Slice 2: Lognorm: 0.8478826880455017\n",
      "Layer 58, Slice 3: Lognorm: 0.846968948841095\n",
      "Layer 58, Slice 4: Lognorm: 0.8411282300949097\n",
      "Layer 58, Slice 5: Lognorm: 0.8458948731422424\n",
      "Layer 58, Slice 6: Lognorm: 0.8468871116638184\n",
      "Layer 58, Slice 7: Lognorm: 0.8454727530479431\n",
      "Layer 58, Slice 8: Lognorm: 0.8465520143508911\n",
      "Layer 60, Slice 0: Lognorm: 0.7486953735351562\n",
      "Layer 63, Slice 0: Lognorm: 0.9879443049430847\n",
      "Layer 63, Slice 1: Lognorm: 0.9859838485717773\n",
      "Layer 63, Slice 2: Lognorm: 0.988101601600647\n",
      "Layer 63, Slice 3: Lognorm: 0.9840918779373169\n",
      "Layer 63, Slice 4: Lognorm: 0.9830352663993835\n",
      "Layer 63, Slice 5: Lognorm: 0.9838576316833496\n",
      "Layer 63, Slice 6: Lognorm: 0.9857428073883057\n",
      "Layer 63, Slice 7: Lognorm: 0.9842801690101624\n",
      "Layer 63, Slice 8: Lognorm: 0.9837382435798645\n",
      "Layer 67, Slice 0: Lognorm: 0.9824867248535156\n",
      "Layer 67, Slice 1: Lognorm: 0.9813995957374573\n",
      "Layer 67, Slice 2: Lognorm: 0.9814181327819824\n",
      "Layer 67, Slice 3: Lognorm: 0.9827790260314941\n",
      "Layer 67, Slice 4: Lognorm: 0.9812817573547363\n",
      "Layer 67, Slice 5: Lognorm: 0.982051432132721\n",
      "Layer 67, Slice 6: Lognorm: 0.9831167459487915\n",
      "Layer 67, Slice 7: Lognorm: 0.9809889197349548\n",
      "Layer 67, Slice 8: Lognorm: 0.9802412986755371\n",
      "Layer 70, Slice 0: Lognorm: 0.9822201728820801\n",
      "Layer 70, Slice 1: Lognorm: 0.9830886721611023\n",
      "Layer 70, Slice 2: Lognorm: 0.9816671013832092\n",
      "Layer 70, Slice 3: Lognorm: 0.9816385507583618\n",
      "Layer 70, Slice 4: Lognorm: 0.9808158874511719\n",
      "Layer 70, Slice 5: Lognorm: 0.9795657992362976\n",
      "Layer 70, Slice 6: Lognorm: 0.9791549444198608\n",
      "Layer 70, Slice 7: Lognorm: 0.9798840284347534\n",
      "Layer 70, Slice 8: Lognorm: 0.9795642495155334\n",
      "Layer 74, Slice 0: Lognorm: 0.9764993190765381\n",
      "Layer 74, Slice 1: Lognorm: 0.9800595641136169\n",
      "Layer 74, Slice 2: Lognorm: 0.9799988865852356\n",
      "Layer 74, Slice 3: Lognorm: 0.9809131026268005\n",
      "Layer 74, Slice 4: Lognorm: 0.9784494638442993\n",
      "Layer 74, Slice 5: Lognorm: 0.9776816368103027\n",
      "Layer 74, Slice 6: Lognorm: 0.9787678718566895\n",
      "Layer 74, Slice 7: Lognorm: 0.9786266088485718\n",
      "Layer 74, Slice 8: Lognorm: 0.9791975021362305\n",
      "Layer 77, Slice 0: Lognorm: 0.9778372049331665\n",
      "Layer 77, Slice 1: Lognorm: 0.9787802696228027\n",
      "Layer 77, Slice 2: Lognorm: 0.9784409403800964\n",
      "Layer 77, Slice 3: Lognorm: 0.978242039680481\n",
      "Layer 77, Slice 4: Lognorm: 0.9772581458091736\n",
      "Layer 77, Slice 5: Lognorm: 0.9781072735786438\n",
      "Layer 77, Slice 6: Lognorm: 0.9772962927818298\n",
      "Layer 77, Slice 7: Lognorm: 0.9748155474662781\n",
      "Layer 77, Slice 8: Lognorm: 0.9773114919662476\n",
      "Layer 81, Slice 0: Lognorm: 0.9792867302894592\n",
      "Layer 81, Slice 1: Lognorm: 0.9775155782699585\n",
      "Layer 81, Slice 2: Lognorm: 0.9772075414657593\n",
      "Layer 81, Slice 3: Lognorm: 0.9776692986488342\n",
      "Layer 81, Slice 4: Lognorm: 0.9764446020126343\n",
      "Layer 81, Slice 5: Lognorm: 0.9769513607025146\n",
      "Layer 81, Slice 6: Lognorm: 0.9768497943878174\n",
      "Layer 81, Slice 7: Lognorm: 0.9758248925209045\n",
      "Layer 81, Slice 8: Lognorm: 0.9767579436302185\n",
      "Layer 84, Slice 0: Lognorm: 0.9770217537879944\n",
      "Layer 84, Slice 1: Lognorm: 0.9747512936592102\n",
      "Layer 84, Slice 2: Lognorm: 0.9771922826766968\n",
      "Layer 84, Slice 3: Lognorm: 0.976015567779541\n",
      "Layer 84, Slice 4: Lognorm: 0.9747397899627686\n",
      "Layer 84, Slice 5: Lognorm: 0.9754480719566345\n",
      "Layer 84, Slice 6: Lognorm: 0.9763211011886597\n",
      "Layer 84, Slice 7: Lognorm: 0.9753649234771729\n",
      "Layer 84, Slice 8: Lognorm: 0.9754464030265808\n",
      "Layer 88, Slice 0: Lognorm: 0.9763234257698059\n",
      "Layer 88, Slice 1: Lognorm: 0.9747671484947205\n",
      "Layer 88, Slice 2: Lognorm: 0.9748045802116394\n",
      "Layer 88, Slice 3: Lognorm: 0.9765112996101379\n",
      "Layer 88, Slice 4: Lognorm: 0.9759426116943359\n",
      "Layer 88, Slice 5: Lognorm: 0.9768142700195312\n",
      "Layer 88, Slice 6: Lognorm: 0.974631130695343\n",
      "Layer 88, Slice 7: Lognorm: 0.9753078818321228\n",
      "Layer 88, Slice 8: Lognorm: 0.9729016423225403\n",
      "Layer 91, Slice 0: Lognorm: 0.9749536514282227\n",
      "Layer 91, Slice 1: Lognorm: 0.9743894338607788\n",
      "Layer 91, Slice 2: Lognorm: 0.9728537201881409\n",
      "Layer 91, Slice 3: Lognorm: 0.9762727618217468\n",
      "Layer 91, Slice 4: Lognorm: 0.9728793501853943\n",
      "Layer 91, Slice 5: Lognorm: 0.9746965169906616\n",
      "Layer 91, Slice 6: Lognorm: 0.9744367003440857\n",
      "Layer 91, Slice 7: Lognorm: 0.9736433029174805\n",
      "Layer 91, Slice 8: Lognorm: 0.9741383790969849\n",
      "Layer 95, Slice 0: Lognorm: 0.9756685495376587\n",
      "Layer 95, Slice 1: Lognorm: 0.9766563773155212\n",
      "Layer 95, Slice 2: Lognorm: 0.9744968414306641\n",
      "Layer 95, Slice 3: Lognorm: 0.9747304320335388\n",
      "Layer 95, Slice 4: Lognorm: 0.9705085158348083\n",
      "Layer 95, Slice 5: Lognorm: 0.9731041193008423\n",
      "Layer 95, Slice 6: Lognorm: 0.9734323024749756\n",
      "Layer 95, Slice 7: Lognorm: 0.9726981520652771\n",
      "Layer 95, Slice 8: Lognorm: 0.9745941758155823\n",
      "Layer 98, Slice 0: Lognorm: 0.972281813621521\n",
      "Layer 98, Slice 1: Lognorm: 0.973243236541748\n",
      "Layer 98, Slice 2: Lognorm: 0.9733028411865234\n",
      "Layer 98, Slice 3: Lognorm: 0.9763572216033936\n",
      "Layer 98, Slice 4: Lognorm: 0.974152684211731\n",
      "Layer 98, Slice 5: Lognorm: 0.9723134636878967\n",
      "Layer 98, Slice 6: Lognorm: 0.9727137684822083\n",
      "Layer 98, Slice 7: Lognorm: 0.9750518798828125\n",
      "Layer 98, Slice 8: Lognorm: 0.9747016429901123\n",
      "Layer 102, Slice 0: Lognorm: 1.1258713006973267\n",
      "Layer 102, Slice 1: Lognorm: 1.1252448558807373\n",
      "Layer 102, Slice 2: Lognorm: 1.1249980926513672\n",
      "Layer 102, Slice 3: Lognorm: 1.1234960556030273\n",
      "Layer 102, Slice 4: Lognorm: 1.126001238822937\n",
      "Layer 102, Slice 5: Lognorm: 1.1241992712020874\n",
      "Layer 102, Slice 6: Lognorm: 1.1239309310913086\n",
      "Layer 102, Slice 7: Lognorm: 1.1238864660263062\n",
      "Layer 102, Slice 8: Lognorm: 1.124721646308899\n",
      "Layer 104, Slice 0: Lognorm: 0.8933459520339966\n",
      "Layer 107, Slice 0: Lognorm: 1.2730491161346436\n",
      "Layer 107, Slice 1: Lognorm: 1.2740854024887085\n",
      "Layer 107, Slice 2: Lognorm: 1.2729394435882568\n",
      "Layer 107, Slice 3: Lognorm: 1.272223949432373\n",
      "Layer 107, Slice 4: Lognorm: 1.2729064226150513\n",
      "Layer 107, Slice 5: Lognorm: 1.2725892066955566\n",
      "Layer 107, Slice 6: Lognorm: 1.272721529006958\n",
      "Layer 107, Slice 7: Lognorm: 1.2729053497314453\n",
      "Layer 107, Slice 8: Lognorm: 1.2720792293548584\n",
      "Layer 111, Slice 0: Lognorm: 1.2707302570343018\n",
      "Layer 111, Slice 1: Lognorm: 1.272554636001587\n",
      "Layer 111, Slice 2: Lognorm: 1.2707841396331787\n",
      "Layer 111, Slice 3: Lognorm: 1.2726328372955322\n",
      "Layer 111, Slice 4: Lognorm: 1.2721258401870728\n",
      "Layer 111, Slice 5: Lognorm: 1.2726877927780151\n",
      "Layer 111, Slice 6: Lognorm: 1.2718309164047241\n",
      "Layer 111, Slice 7: Lognorm: 1.2722572088241577\n",
      "Layer 111, Slice 8: Lognorm: 1.2725160121917725\n",
      "Layer 114, Slice 0: Lognorm: 1.271831750869751\n",
      "Layer 114, Slice 1: Lognorm: 1.2728395462036133\n",
      "Layer 114, Slice 2: Lognorm: 1.2723405361175537\n",
      "Layer 114, Slice 3: Lognorm: 1.2722866535186768\n",
      "Layer 114, Slice 4: Lognorm: 1.273871660232544\n",
      "Layer 114, Slice 5: Lognorm: 1.2719104290008545\n",
      "Layer 114, Slice 6: Lognorm: 1.2708736658096313\n",
      "Layer 114, Slice 7: Lognorm: 1.271203875541687\n",
      "Layer 114, Slice 8: Lognorm: 1.2720270156860352\n",
      "Layer 118, Slice 0: Lognorm: 1.2725465297698975\n",
      "Layer 118, Slice 1: Lognorm: 1.2721577882766724\n",
      "Layer 118, Slice 2: Lognorm: 1.272374153137207\n",
      "Layer 118, Slice 3: Lognorm: 1.2721879482269287\n",
      "Layer 118, Slice 4: Lognorm: 1.2723016738891602\n",
      "Layer 118, Slice 5: Lognorm: 1.272029161453247\n",
      "Layer 118, Slice 6: Lognorm: 1.2709635496139526\n",
      "Layer 118, Slice 7: Lognorm: 1.2715508937835693\n",
      "Layer 118, Slice 8: Lognorm: 1.2718702554702759\n",
      "Layer 121, Slice 0: Lognorm: 1.272430419921875\n",
      "Layer 121, Slice 1: Lognorm: 1.2719049453735352\n",
      "Layer 121, Slice 2: Lognorm: 1.271252989768982\n",
      "Layer 121, Slice 3: Lognorm: 1.2712174654006958\n",
      "Layer 121, Slice 4: Lognorm: 1.2730131149291992\n",
      "Layer 121, Slice 5: Lognorm: 1.2721664905548096\n",
      "Layer 121, Slice 6: Lognorm: 1.270777940750122\n",
      "Layer 121, Slice 7: Lognorm: 1.2724508047103882\n",
      "Layer 121, Slice 8: Lognorm: 1.2725721597671509\n"
     ]
    }
   ],
   "source": [
    "resnetWatcher.analyze(layers=ww.LAYER_TYPE.CONV2D)\n",
    "\n",
    "for layer_id, result in results.items():\n",
    "    for slice_id, summary in result.items():\n",
    "        if not str(slice_id).isdigit() or \"lognorm\" not in summary:\n",
    "            continue\n",
    "        lognorm = summary[\"lognorm\"]\n",
    "        print(\"Layer {}, Slice {}: Lognorm: {}\".format(layer_id, slice_id, lognorm))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-04-06 13:51:18,182 INFO \n",
      "\n",
      "python      version 3.6.9 (default, Nov  7 2019, 10:44:02) \n",
      "[GCC 8.3.0]\n",
      "numpy       version 1.18.1\n",
      "tensforflow version 1.14.0\n",
      "keras       version 2.3.1\n",
      "2020-04-06 13:51:18,184 INFO Analyzing model 'densenet' with 567 layers\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: divide by zero encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "/home/reza/.local/lib/python3.6/site-packages/powerlaw.py:700: RuntimeWarning: invalid value encountered in true_divide\n",
      "  (Theoretical_CDF * (1 - Theoretical_CDF))\n",
      "2020-04-06 13:52:12,459 INFO ### Printing results ###\n",
      "2020-04-06 13:52:25,520 INFO Check: min: 0.06097311385698125, max: 2.5768312503419826, avg: 1.0410752223320638\n",
      "2020-04-06 13:52:25,522 INFO Check compound: min: 0.06097311385698125, max: 1.9540489048209366, avg: 0.618539129806069\n",
      "2020-04-06 13:52:25,523 INFO CheckTF: min: False, max: True, avg: 0.8863636363636364\n",
      "2020-04-06 13:52:25,524 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.484472049689441\n",
      "2020-04-06 13:52:25,524 INFO Norm: min: 9.715526580810547, max: 16.15900421142578, avg: 12.937265396118164\n",
      "2020-04-06 13:52:25,525 INFO Norm compound: min: 9.715526580810547, max: 16.15900421142578, avg: 12.937265396118164\n",
      "2020-04-06 13:52:25,526 INFO LogNorm: min: 0.9874663352966309, max: 1.2084145545959473, avg: 1.097940444946289\n",
      "2020-04-06 13:52:25,527 INFO LogNorm compound: min: 0.9874663352966309, max: 1.2084145545959473, avg: 1.097940444946289\n",
      "2020-04-06 13:52:25,527 INFO Norm X: min: 12.04697322845459, max: 19.800518035888672, avg: 15.923746109008789\n",
      "2020-04-06 13:52:25,528 INFO Norm X compound: min: 12.04697322845459, max: 19.800518035888672, avg: 15.923746109008789\n",
      "2020-04-06 13:52:25,529 INFO LogNorm X: min: 1.0808779001235962, max: 1.296676516532898, avg: 1.188777208328247\n",
      "2020-04-06 13:52:25,529 INFO LogNorm X compound: min: 1.0808779001235962, max: 1.296676516532898, avg: 1.188777208328247\n",
      "2020-04-06 13:52:25,530 INFO Alpha: min: 5.94583944857135, max: 23.01496692677271, avg: 14.480403187672032\n",
      "2020-04-06 13:52:25,531 INFO Alpha compound: min: 5.94583944857135, max: 23.01496692677271, avg: 14.480403187672032\n",
      "2020-04-06 13:52:25,531 INFO Alpha Weighted: min: 2.7578841937295238, max: 10.655278071630486, avg: 6.706581132680005\n",
      "2020-04-06 13:52:25,532 INFO Alpha Weighted compound: min: 2.7578841937295238, max: 10.655278071630486, avg: 6.706581132680005\n",
      "2020-04-06 13:52:25,532 INFO alpha pNorm: min: 3.4730209072123195, max: 11.028764619075941, avg: 7.2508927631441304\n",
      "2020-04-06 13:52:25,533 INFO alpha pNorm compound: min: 3.4730209072123195, max: 11.028764619075941, avg: 7.2508927631441304\n",
      "2020-04-06 13:52:25,564 INFO ### Printing results ###\n",
      "2020-04-06 13:52:38,621 INFO Check: min: 0.06097311385698125, max: 2.5768312503419826, avg: 1.0410752223320638\n",
      "2020-04-06 13:52:38,622 INFO Check compound: min: 0.06097311385698125, max: 1.9540489048209366, avg: 0.618539129806069\n",
      "2020-04-06 13:52:38,623 INFO CheckTF: min: False, max: True, avg: 0.8863636363636364\n",
      "2020-04-06 13:52:38,624 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.484472049689441\n",
      "2020-04-06 13:52:38,625 INFO Norm: min: 9.715526580810547, max: 16.15900421142578, avg: 12.937265396118164\n",
      "2020-04-06 13:52:38,625 INFO Norm compound: min: 9.715526580810547, max: 16.15900421142578, avg: 12.937265396118164\n",
      "2020-04-06 13:52:38,626 INFO LogNorm: min: 0.9874663352966309, max: 1.2084145545959473, avg: 1.097940444946289\n",
      "2020-04-06 13:52:38,627 INFO LogNorm compound: min: 0.9874663352966309, max: 1.2084145545959473, avg: 1.097940444946289\n",
      "2020-04-06 13:52:38,627 INFO Norm X: min: 12.04697322845459, max: 19.800518035888672, avg: 15.923746109008789\n",
      "2020-04-06 13:52:38,628 INFO Norm X compound: min: 12.04697322845459, max: 19.800518035888672, avg: 15.923746109008789\n",
      "2020-04-06 13:52:38,629 INFO LogNorm X: min: 1.0808779001235962, max: 1.296676516532898, avg: 1.188777208328247\n",
      "2020-04-06 13:52:38,629 INFO LogNorm X compound: min: 1.0808779001235962, max: 1.296676516532898, avg: 1.188777208328247\n",
      "2020-04-06 13:52:38,630 INFO Alpha: min: 5.94583944857135, max: 23.01496692677271, avg: 14.480403187672032\n",
      "2020-04-06 13:52:38,631 INFO Alpha compound: min: 5.94583944857135, max: 23.01496692677271, avg: 14.480403187672032\n",
      "2020-04-06 13:52:38,631 INFO Alpha Weighted: min: 2.7578841937295238, max: 10.655278071630486, avg: 6.706581132680005\n",
      "2020-04-06 13:52:38,632 INFO Alpha Weighted compound: min: 2.7578841937295238, max: 10.655278071630486, avg: 6.706581132680005\n",
      "2020-04-06 13:52:38,633 INFO alpha pNorm: min: 3.4730209072123195, max: 11.028764619075941, avg: 7.2508927631441304\n",
      "2020-04-06 13:52:38,633 INFO alpha pNorm compound: min: 3.4730209072123195, max: 11.028764619075941, avg: 7.2508927631441304\n",
      "2020-04-06 13:52:38,666 INFO ### Printing results ###\n",
      "2020-04-06 13:52:51,735 INFO Check: min: 0.06097311385698125, max: 2.5768312503419826, avg: 1.0410752223320638\n",
      "2020-04-06 13:52:51,736 INFO Check compound: min: 0.06097311385698125, max: 1.9540489048209366, avg: 0.618539129806069\n",
      "2020-04-06 13:52:51,737 INFO CheckTF: min: False, max: True, avg: 0.8863636363636364\n",
      "2020-04-06 13:52:51,738 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.484472049689441\n",
      "2020-04-06 13:52:51,739 INFO Norm: min: 9.715526580810547, max: 16.15900421142578, avg: 12.937265396118164\n",
      "2020-04-06 13:52:51,739 INFO Norm compound: min: 9.715526580810547, max: 16.15900421142578, avg: 12.937265396118164\n",
      "2020-04-06 13:52:51,740 INFO LogNorm: min: 0.9874663352966309, max: 1.2084145545959473, avg: 1.097940444946289\n",
      "2020-04-06 13:52:51,741 INFO LogNorm compound: min: 0.9874663352966309, max: 1.2084145545959473, avg: 1.097940444946289\n",
      "2020-04-06 13:52:51,741 INFO Norm X: min: 12.04697322845459, max: 19.800518035888672, avg: 15.923746109008789\n",
      "2020-04-06 13:52:51,742 INFO Norm X compound: min: 12.04697322845459, max: 19.800518035888672, avg: 15.923746109008789\n",
      "2020-04-06 13:52:51,743 INFO LogNorm X: min: 1.0808779001235962, max: 1.296676516532898, avg: 1.188777208328247\n",
      "2020-04-06 13:52:51,743 INFO LogNorm X compound: min: 1.0808779001235962, max: 1.296676516532898, avg: 1.188777208328247\n",
      "2020-04-06 13:52:51,744 INFO Alpha: min: 5.94583944857135, max: 23.01496692677271, avg: 14.480403187672032\n",
      "2020-04-06 13:52:51,745 INFO Alpha compound: min: 5.94583944857135, max: 23.01496692677271, avg: 14.480403187672032\n",
      "2020-04-06 13:52:51,745 INFO Alpha Weighted: min: 2.7578841937295238, max: 10.655278071630486, avg: 6.706581132680005\n",
      "2020-04-06 13:52:51,746 INFO Alpha Weighted compound: min: 2.7578841937295238, max: 10.655278071630486, avg: 6.706581132680005\n",
      "2020-04-06 13:52:51,747 INFO alpha pNorm: min: 3.4730209072123195, max: 11.028764619075941, avg: 7.2508927631441304\n",
      "2020-04-06 13:52:51,747 INFO alpha pNorm compound: min: 3.4730209072123195, max: 11.028764619075941, avg: 7.2508927631441304\n"
     ]
    }
   ],
   "source": [
    "densenetWatcher = ww.WeightWatcher(model=denseNetModel)\n",
    "resultsDenseNet = densenetWatcher.analyze(alphas=True)\n",
    "\n",
    "densenetWatcher.print_results()\n",
    "densenetWatcher.get_summary()\n",
    "\n",
    "densenetWatcherDetails = densenetWatcher.get_details(results=resultsDenseNet)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2020-04-06 13:54:16,000 INFO Analyzing model 'model_1' with 71 layers\n",
      "2020-04-06 13:54:16,174 INFO ### Printing results ###\n",
      "2020-04-06 13:54:18,850 INFO Check: min: 0.0687838253571731, max: 2.6714299045925975, avg: 1.8444980563213305\n",
      "2020-04-06 13:54:18,852 INFO Check compound: min: 0.0687838253571731, max: 2.644141827897842, avg: 1.4558819691049196\n",
      "2020-04-06 13:54:18,853 INFO CheckTF: min: False, max: True, avg: 0.36548223350253806\n",
      "2020-04-06 13:54:18,854 INFO CheckTF compound: min: 0.0, max: 1.0, avg: 0.38095238095238093\n",
      "2020-04-06 13:54:18,854 INFO Norm: min: 5.872817039489746, max: 42.411502838134766, avg: 18.97556495666504\n",
      "2020-04-06 13:54:18,855 INFO Norm compound: min: 5.987733840942383, max: 42.30625915527344, avg: 17.617650985717773\n",
      "2020-04-06 13:54:18,856 INFO LogNorm: min: 0.7688464522361755, max: 1.627483606338501, avg: 1.1756139993667603\n",
      "2020-04-06 13:54:18,856 INFO LogNorm compound: min: 0.7772339582443237, max: 1.6264044046401978, avg: 1.1485332250595093\n",
      "2020-04-06 13:54:18,857 INFO Norm X: min: 6.319842338562012, max: 112.54231262207031, avg: 40.16720962524414\n",
      "2020-04-06 13:54:18,858 INFO Norm X compound: min: 6.642741680145264, max: 112.0230941772461, avg: 35.7081184387207\n",
      "2020-04-06 13:54:18,859 INFO LogNorm X: min: 0.8007062673568726, max: 2.0513157844543457, avg: 1.4004671573638916\n",
      "2020-04-06 13:54:18,859 INFO LogNorm X compound: min: 0.8222110867500305, max: 2.0493063926696777, avg: 1.3540605306625366\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Layer 137, Slice 0: Lognorm: 0.9874663352966309\n",
      "Layer 393, Slice 0: Lognorm: 1.2084145545959473\n"
     ]
    }
   ],
   "source": [
    "resnetWatcher.analyze(layers=ww.LAYER_TYPE.CONV2D)\n",
    "\n",
    "for layer_id, result in resultsDenseNet.items():\n",
    "    for slice_id, summary in result.items():\n",
    "        if not str(slice_id).isdigit() or \"lognorm\" not in summary:\n",
    "            continue\n",
    "        lognorm = summary[\"lognorm\"]\n",
    "        print(\"Layer {}, Slice {}: Lognorm: {}\".format(layer_id, slice_id, lognorm))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "## WeightWatcher helps you choose the best pretrained model for your needs.\n",
    "\n",
    "## You can use WeightWatcher to compare several pretrained models and choose the one with the lowest Log Norm."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 0, 'Weighted alpha')"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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aq1du1bdunXTyy+/rB/+8Id67bXXdNxxx1Xb3tixYzV+/Phqy4qKivS73/1OiURCX/va17Rx40atXbv2kMe8aNEiZWZmasOGDXrvvfc0adIkvfvuu4e8vSiEFgBQ+Rnt+++/L3fX/fffL0lyd912222Vd+JZt26drrnmGnXs2FFLly5Vt27dNHbsWP385z+vtr3zzjtP27dv18KFCyuXubvuvffeym2999576t+//35jGTlypBKJhAYOHHjAMT/66KM6//zz1aJFC7Vv3169evVSU7zOPqEFAFRq3bq17rnnHk2aNEm7d+/WgAEDNH36dJWXl0uSPvroI5WWlmrDhg1q3bq1rrzySo0ZM6bafWsrjB07Vr/+9a8rHw8YMEAPPvigdu3aJUlas2aNtm7dqrZt22rLli2V6z3yyCMqLi7W888/f8CxnnLKKXr11VclJT8zXrhwoTp16nTYfwcNjc9oAQDVnHXWWcrPz9esWbM0fPhwrVq1SoWFhZKS9639/e9/r3Xr1mnMmDHKyMhQixYt9OCDD+63nYEDByo7O7vy8bXXXquSkhJ1795d7q7s7Gw9/fTTys/PV2Zmps4880yNGDFCN998c7XtzJ49WzfccIPKysp04YUXKpFI6KWXXtL111+vkSNHqmvXrnJ3jRw5Uvn5+bF/OYcgbW+TV3H5xYDpAUCD4jZ5zQu3yQMAoAkhtAAABCK0AAAEIrQAAAQitAAABCK0AAAEIrQAgMrb5HXt2lVnnnmmJk2apL179x6R954xY4YyMjL01ltvVS7Ly8tTSUnJAV939913a9u2bTU+t3HjRvXt21dt2rTR6NGjqz23c+dOjRo1Sh07dlSnTp305JNPSpLmz5+v7t27KysrS0888cThTaoKLlgBAE2M3d6wt8nzcQd3m7zS0lINGzZMmzdv1u0NPJba5OTkaMKECdXuAlSXu+++W1deeaVat26933OtWrXSL37xC61YsUIrVqyo9tyECRPUvn17rVmzRnv37tWmTZskJa80NWPGDN11112HN5l9cEQLAKimffv2euihh3TffffJ3Wu9vd28efPUp08fDRkyRJ06ddIVV1yhiosg3XrrrerSpYvy8/P1gx/8QJJUVlamb3zjG+rRo4d69OihBQsWVL7nRRddpJUrV+qdd97ZbzxFRUUqLCxU9+7dddlll6m8vFz33HOPNmzYoL59+6pv3777vebYY4/Vueeeq1atWu333PTp03XbbbdJkjIyMnTCCSdIknJzc5Wfn6+MjIZNI0e0AID9nHbaadqzZ49KS0v1zDPP1Hh7O0l68803tXLlSnXo0EG9evXSggUL1LlzZ82ePVurV6+WmenTTz+VJN144426+eabde655+qDDz7QgAEDtGrVKknJ4N1yyy365S9/qZkzZ1aO45NPPtH48eP1yiuv6Nhjj9XEiRM1efJk/fSnP9XkyZM1d+7cylDWR8VYfvKTn2jevHk6/fTTdd999+nEE09sqL+6/XBECwA4oAPd3q5nz57KyclRRkaGEomESkpKdNxxx6lVq1a65ppr9NRTT1We2n3llVc0evRoJRIJDRo0SJs3b668WYEkDRs2TAsXLtR7771XuWzhwoV6++231atXLyUSCc2cOVPvv//+Ic9l9+7dWr9+vc455xwtXbpUhYWFlUfcUTiiBQDs591331VmZqbat29feXu7AQMGVFtn3rx5+sIXvlD5ODMzU7t371ZWVpYWLVqkOXPm6IknntB9992nV199VXv37tXChQtrPJ0rSVlZWfr+97+viRMnVi5zd/Xr10+zZs064Hhnz55d+Xnyww8/rIKCGi87rHbt2ql169a69NJLJUmXXXaZpk2bVvdfyGHgiBYAUE1ZWZmuu+46jR49WmZW6+3talNeXq7PPvtMAwcO1JQpU7Rs2TJJUv/+/XXvvfdWrlfx5auqRowYoVdeeUVlZWWSpK9//etasGCB1q1bJyl5O7w1a9ZIUrXb6w0ePLjyPre1RVaSzEwXX3yx5s2bJ0maM2eOunTpUt+/mkPCES0AQNu3b1cikdCuXbuUlZWl4cOH63vf+56k2m9vV5stW7bokksu0eeffy531+TJkyVJ99xzj66//nrl5+dr9+7d6t27t6ZOnVrttS1bttR3v/td3XjjjZKk7OxszZgxQ0OHDtWOHTskSePHj1fHjh01atQonX/++erQoYPmzp273zhyc3O1efNm7dy5U08//bSKiorUpUsXTZw4UcOHD9dNN92k7OxsPfLII5KkN954Q4MHD9a//vUv/fnPf9a4ceO0cuXKw/675TZ5ANDIuE1e88Jt8gAAaEIILQAAgQgtAACBCC0ANAER35dBwzuU/URoAaCRtWrVShs3biS2TZy7a+PGjbX+HnBt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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "y = vggWatcherDetails.alpha.to_numpy()\n",
    "plt.hist(y, bins=2, alpha=1, color='blue', label='VGG-19', density=True);\n",
    "y = renetWatcherDetails.alpha.to_numpy()\n",
    "plt.hist(y, bins=2, alpha=1, color='purple', label='ResNet-18', density=True);\n",
    "y = renetWatcherDetails.alpha.to_numpy()\n",
    "plt.hist(y, bins=2, alpha=1, color='teal', label='DenseNet-161', density=True);\n",
    "\n",
    "plt.legend()\n",
    "plt.xlabel(\"Weighted alpha\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 0, 'Log-norm')"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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rrvumgMPPDAjR47MwQcfnBcPgvT5z38+2267bcaOHZvPfvazSZKFCxfm/e9/f3bcccfsuOOOueWWW7ofc5999sns2bNz7733rjDP9OnT09nZmXHjxuUDH/hAnnzyyZx11ll59NFHM3HixEycOHGF+2y88cbZeeedM3jw4BVuu/DCC/OFL3whSTJgwIBsvvnmSZLhw4dn7NixGTBgzabRHi0AK3j729+eF154IQsWLMjVV1/9iqe3S5Jf/vKXmT17drbccstMmDAht9xyS7bZZptMmzYt99xzT0op+cMf/pAkOfroo3PMMcdk5513zkMPPZQ99tgjc+bMSbIseMcdd1z+/u//PhdddFH3HL/97W8zZcqUXHvttdl4441z8skn5/TTT8+Xv/zlnH766bnhhhu6Q9kTL87yd3/3d7nxxhuz9dZb55xzzsmb3vSmNbXpVmCPFoBVWtXp7XbaaacMGzYsAwYMSEdHR+bNm5dNN900gwcPzhFHHJErr7yy+6Xda6+9NkceeWQ6Ojqy33775fHHH+8+WUGSHHTQQZkxY0YefPDB7utmzJiRu+++OxMmTEhHR0cuuuii/PrXv37Nz2XJkiWZP39+3v3ud+f2229PZ2dn9x53K/ZoAVjBAw88kIEDB2aLLbboPr3dHnvssdwyN954Y/7oj/6o+/LAgQOzZMmSDBo0KLfeemuuu+66XH755TnnnHNy/fXXZ+nSpZkxY8YrvpybJIMGDcpnPvOZnHzyyd3X1Vqz22675ZJLLlnlvNOmTet+P/nb3/52xo9/xcMOZ7PNNsuQIUPyvve9L0nygQ98IBdccMHqN8jrYI8WgOUsXLgwH//4x3PkkUemlLLS09utzJNPPpnHHnsse+21V84444zccccdSZLdd989Z599dvdyL3746qUOO+ywXHvttVm4cGGS5F3velduueWW3H///UmWnQ7vvvvuS5LlTq93wAEHdJ/ndmWRTZJSSvbdd9/ceOONSZLrrrsu2267bU83zWtijxaAPP300+no6Mjzzz+fQYMG5dBDD82nP/3pJCs/vd3KPPHEE9l///3zzDPPpNaa008/PUly1lln5ROf+ETGjh2bJUuWZJdddsl555233H033HDDfPKTn8zRRx+dJBk6dGimTp2aSZMm5dlnn02STJkyJSNGjMjkyZOz5557Zsstt8wNN9ywwhzD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\n",
      "text/plain": [
       "<Figure size 576x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "y = vggWatcherDetails.lognorm.to_numpy()\n",
    "plt.hist(y, bins=5, alpha=1, color='blue', label='VGG-19', density=True);\n",
    "y = renetWatcherDetails.lognorm.to_numpy()\n",
    "plt.hist(y, bins=5, alpha=1, color='purple', label='ResNet-18', density=True);\n",
    "y = renetWatcherDetails.lognorm.to_numpy()\n",
    "plt.hist(y, bins=5, alpha=1, color='teal', label='DenseNet-161', density=True);\n",
    "\n",
    "plt.legend()\n",
    "plt.xlabel(\"Log-norm\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
